dockertest
testcontainers-node
dockertest | testcontainers-node | |
---|---|---|
48 | 26 | |
3,970 | 1,682 | |
1.0% | 3.9% | |
3.0 | 8.4 | |
2 days ago | 5 days ago | |
Go | TypeScript | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
dockertest
-
Testcontainers
I am using https://github.com/ory/dockertest for tests, specifically for databases. Is there any advantage to use Testcontainers?
-
Level UP your RDBMS Productivity in GO
Now, let's run the tests. For this purpose, we are going to use dockertest, but test containers is also a good solution.
-
Golang testing using docker services via dockertest
During my path learning go so far I have come across some amazing libraries and utilites, one of my favourite for integration testing is dockertest.
-
How to start a Go project in 2023
Things I can't live without in a new Go project in no particular order:
- https://github.com/golangci/golangci-lint - meta-linter
- https://goreleaser.com - automate release workflows
- https://magefile.org - build tool that can version your tools
- https://github.com/ory/dockertest/v3 - run containers for e2e testing
- https://github.com/ecordell/optgen - generate functional options
- https://golang.org/x/tools/cmd/stringer - generate String()
- https://mvdan.cc/gofumpt - stricter gofmt
- https://github.com/stretchr/testify - test assertion library
- https://github.com/rs/zerolog - logging
- https://github.com/spf13/cobra - CLI framework
FWIW, I just lifted all the tools we use for https://github.com/authzed/spicedb
We've also written some custom linters that might be useful for other folks: https://github.com/authzed/spicedb/tree/main/tools/analyzers
-
Beginner-friendly API made with Go following hexagonal architecture.
I've used dockertest a bunch and it is really amazing.
-
How to unit test your database interactions with Docker
Reminds me of https://github.com/ory/dockertest
-
When to mock and what to mock in a Web API?
If your project is relatively simple and you can get away with recreating your scenarios against a real mock database and run other related services locally. It would be good to setup docker containers for your test scripts and write e2e tests. I believe e2e tests are harder but more useful in understanding/reasoning how users are impacted.
-
Don't Mock the Database
Just a heads up, the repository in your comment is invalid, the correct link is https://github.com/ory/dockertest
-
Mocking database calls without a library?
Don't mock. Use https://github.com/ory/dockertest to actually run tests against a dockerized DB.
-
Different SQL drivers for test and production
Use a library like ory/dockertest to spin up a test database for integration tests. It's easy to use, and tests are still fast. It'll take a minute to download the mysql docker image the first time. But, once it's been downloaded, starting the db, running migrations, and running the tests is still pretty quick.
testcontainers-node
-
Multiple MongoDB Databases on Spring Boot
To be able to test for multiple databases, I recommend you using Testcontainers. That's my configuration to start the container:
-
Show HN: I open-sourced the in-memory PostgreSQL I built at work for E2E tests
I don't get it either. Why not use something like https://testcontainers.com/?
- Utilizando Testcontainers para Testes de Integração com NestJS e Prisma ORM
- Testcontainers
-
Rust Tooling: 8 tools that will increase your productivity
Testing with added infrastructure can be quite tricky. testcontainers aims to solve this by providing an open-source framework for providing local, lightweight containers for your application that can be immediately thrown away after use. It also has a Rust SDK!
-
Run and test DynamoDB applications locally using Docker and Testcontainers
This is a good start. But DynamoDB Local is a great fit for Testcontainers which "is an open source framework for providing throwaway, lightweight instances of databases, message brokers, web browsers, or just about anything that can run in a Docker container."
- API completa em Golang - Parte 7
- We built our customer data warehouse all on Postgres
-
Quarkus : Greener, Better, Faster, Stronger
Devservices supports the automatic provisioning of unconfigured third party services in development and test mode. They can be provided by extension leveraging (usually) TestContainer library.
-
The day I started believing in Unit Tests (2023)
I hadn’t heard of Test Containers[1], but it looks really useful - thanks for the rec.
[1] https://testcontainers.com/
What are some alternatives?
testcontainers-go - Testcontainers for Go is a Go package that makes it simple to create and clean up container-based dependencies for automated integration/smoke tests. The clean, easy-to-use API enables developers to programmatically define containers that should be run as part of a test and clean up those resources when the test is done.
nestjs-testing - Testing tutorial using NestJs
fake-gcs-server - Google Cloud Storage emulator & testing library.
Playwright - Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.
mockaroo - Mock-A-🦘 (mock-aa-roo) a comprehensive HTTP/HTTPS interface mocking tool for all your development and testing needs!
jest - Delightful JavaScript Testing.
venom - 🐍 Manage and run your integration tests with efficiency - Venom run executors (script, HTTP Request, web, imap, etc... ) and assertions
mocha - ☕️ simple, flexible, fun javascript test framework for node.js & the browser
steampipe - Zero-ETL, infinite possibilities. Live query APIs, code & more with SQL. No DB required.
Cucumber.js - Cucumber for JavaScript
go-sqlmock - Sql mock driver for golang to test database interactions
TestCafe - A Node.js tool to automate end-to-end web testing.