testfixtures
godog
Our great sponsors
testfixtures | godog | |
---|---|---|
4 | 5 | |
1,046 | 2,193 | |
2.7% | 1.8% | |
6.3 | 6.8 | |
5 days ago | 1 day ago | |
Go | Go | |
MIT License | 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.
testfixtures
-
How to mock database calls
I'm the author of https://github.com/go-testfixtures/testfixtures, a library written to make it easier to write tests with a real database and test data. You might want to use it together with docker-compose, for example.
-
Integration tests with Go and testcontainers
To solve the problem we will use testfixtures. Create a folders fixtures и fixtures/storage and put a file users.yaml inside:
-
Mocking database or use a test database
A lot of good suggestions here, I would also take a look at go-testfixtures which allows you to create some simple yaml-based fixture data to use with unit testing. It's quick and easy, but yes can get unwieldy the more you add.
-
Ask HN: What are some tools / libraries you built yourself?
I built an alternative to Make written in Go that is simpler to use and cross-platform: https://taskfile.dev/
Also, a library to write tests with databases for Go: https://github.com/go-testfixtures/testfixtures
godog
-
Godog integration test failing with weird error
It's complaining about a file missing in $GOPATH/pkg... but I'm not sure how do I get the packages its asking for. Things I have tried: - running go mod tidy - running go get -u github.com/cucumber/godog (hoping it would add the files to pkg/mod/... - Uninstalled and installed Go again.
-
What's your favourite part of unit testing?
I also use BDD (Gherkin with godog in particular) to verify and document the expected behaviour of a product from an end user's perspective when needed. I usually do this when the product also contains untested code that I have no control over when I'm working on a problem - this gives me peace of mind over something I can't control while doubling as documentation.
-
Behaviour Driven Development (BDD) boilerplate tests generator
It looks like it is not possible to share steps between scenario's or features. In https://github.com/cucumber/godog it is possible to share steps.
-
Behaviour Driven Development (BDD) boilerplate tests generator for Golang
Differences between gherkingen and godog are:
- BDD (Behavior-driven development) mit Go
What are some alternatives?
go-vcr - Record and replay your HTTP interactions for fast, deterministic and accurate tests
ginkgo - A Modern Testing Framework for Go
Hamcrest - Hamcrest matchers for the Go programming language
GoConvey - Go testing in the browser. Integrates with `go test`. Write behavioral tests in Go.
Testify - A toolkit with common assertions and mocks that plays nicely with the standard library
GoSpec - Testing framework for Go. Allows writing self-documenting tests/specifications, and executes them concurrently and safely isolated. [UNMAINTAINED]
venom - 🐍 Manage and run your integration tests with efficiency - Venom run executors (script, HTTP Request, web, imap, etc... ) and assertions
assert - :exclamation:Basic Assertion Library used along side native go testing, with building blocks for custom assertions
dbcleaner - Clean database for testing, inspired by database_cleaner for Ruby
gomega - Ginkgo's Preferred Matcher Library