rapid
datadriven
Our great sponsors
rapid | datadriven | |
---|---|---|
4 | 2 | |
538 | 39 | |
- | - | |
6.4 | 2.0 | |
27 days ago | 2 months ago | |
Go | Go | |
Mozilla Public License 2.0 | Apache License 2.0 |
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.
rapid
-
Property based testing in Go
You can check the package here, in official GitHub repo. I recently found this amazing testing framework and now I can't imagine developing tests without it. Let's try to refactor our previous example with this package:
-
Prefer table driven tests (2019)
Yes, but using quick is just a PITA, I'd recommend using Rapid https://github.com/flyingmutant/rapid instead
-
Why Turborepo is migrating from Go to Rust – Vercel
For finite solutions that you can fit in your head maybe, but I'm still sure that fuzzing, coverage, and [advanced testing](https://github.com/flyingmutant/rapid) are ways to go. And nothing beats integration testing if you need to see how application interacts as a whole.
datadriven
-
Prefer table driven tests (2019)
Table driven tests are a lot better than a bunch of imperative tests but they rapidly become unwieldy to debug, maintain, and evolve. Their readability often isn’t great.
If you’re using go, check out https://github.com/cockroachdb/datadriven. It takes a little bit of effort to craft a testing dsl, but it is so worth it.
Also, snapshot style testing where the test writes out its expectations and you just inspect it and save it (part of datadriven) is wonderful.
I’ve been using insta in rust lately and it’s some of what I want but not quite datadriven.
-
Ask HN: What's your favorite software testing framework and why?
I’ve found the datadriven[1] testing approach in go to be quite effective. The idea is that you leverage a standardized file structure to construct a little DSL for testing your code. This allows you to write expressive tests that print the state of the code and then look at it. Rewrite is also very powerful.
This is all inspired by the sqllite logic test framework.
[1]: https://github.com/cockroachdb/datadriven
What are some alternatives?
hopper - Coverage-Guided Greybox Distributed Fuzzer
jsverify - Write powerful and concise tests. Property-based testing for JavaScript. Like QuickCheck.
base32h.rb - Base32H encoder/decoder in Ruby
greenlight - Clojure integration testing framework
testy - test helpers for more meaningful, readable, and fluent tests
embedded-postgres - Java embedded PostgreSQL component for testing
ospec - Noiseless testing framework
LazySmallCheck2012 - Lazy SmallCheck with functional values and existentials!
ava - Node.js test runner that lets you develop with confidence 🚀
base32h-tests - Base32H Test Suite
American Fuzzy Lop - american fuzzy lop - a security-oriented fuzzer
venom - 🐍 Manage and run your integration tests with efficiency - Venom run executors (script, HTTP Request, web, imap, etc... ) and assertions