espec
proper
Our great sponsors
espec | proper | |
---|---|---|
- | 3 | |
798 | 878 | |
- | 0.1% | |
5.5 | 3.1 | |
about 2 months ago | 9 months ago | |
Elixir | Erlang | |
MIT License | GNU General Public License v3.0 only |
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.
espec
We haven't tracked posts mentioning espec yet.
Tracking mentions began in Dec 2020.
proper
-
How programmers make sure that their software is correct
> There are generally two main categories of tests. There are unit tests [and] Integration tests
Later on there is a mention of fuzzing. However, there is something better called property tests. Where the on failure there is automatic "shrinking" of input complexity to find a minimally failing test scenario.
For Erlang and Elixir I recommend https://propertesting.com/ book and the PropEr test framework https://github.com/proper-testing/proper.
As an example, here is the use of an advanced feature called targeted property based testing: https://proper-testing.github.io/tutorials/PropEr_testing_wi... used to test a labyrinth.
-
Laura Castro on Property-Based Testing in Elixir
[1] https://proper-testing.github.io/
What are some alternatives?
wallaby - Concurrent browser tests for your Elixir web apps.
StreamData - Data generation and property-based testing for Elixir. 🔮
hound - Elixir library for writing integration tests and browser automation
meck - A mocking library for Erlang
ex_machina - Create test data for Elixir applications
Quixir - Property-based testing for Elixir
pavlov - A BDD framework for your Elixir projects
espec_phoenix - ESpec for Phoenix web framework.
shouldi - Elixir testing libraries with nested contexts, superior readability, and ease of use
bypass - Bypass provides a quick way to create a custom plug that can be put in place instead of an actual HTTP server to return prebaked responses to client requests.