mock
Mocking library for Elixir language (by jjh42)
mox
Mocks and explicit contracts in Elixir (by dashbitco)
Our great sponsors
mock | mox | |
---|---|---|
2 | 6 | |
626 | 1,289 | |
- | 1.3% | |
4.3 | 6.0 | |
2 months ago | about 1 month ago | |
Elixir | Elixir | |
MIT License | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
mock
Posts with mentions or reviews of mock.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-04-18.
-
An Introduction to Mocking Tools for Elixir
It also maintains separate mocks for each process, so you can continue using async tests. It’s a great alternative to Mock — but that also means the same caveat applies: be careful about what you mock.
-
How to ignore a child of a Supervisor not being able to start during tests?
In order to do this you may use mock (which is simple to use), mox (they have pretty compelling arguments why not to mock traditionally), or specifically for http requests, bypass.
mox
Posts with mentions or reviews of mox.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-04-18.
- Dealing with random number in tests
-
An Introduction to Mocking Tools for Elixir
Mox helps get around these issues by ensuring explicit contracts. Read Mocks and Explicit Contracts for more details.
-
How to ignore a child of a Supervisor not being able to start during tests?
In order to do this you may use mock (which is simple to use), mox (they have pretty compelling arguments why not to mock traditionally), or specifically for http requests, bypass.
- Como testes ajudam a melhorar o design do código?
- Elixir: Testando chamadas de uma API externa
-
8 Common Causes of Flaky Tests in Elixir
Your options are mock ets/persistent_term — after all, we don't need to test that these things do what they say (Erlang does that for us!) — or have the tests run synchronously. Prefer the former! Mox is a great choice for this sort of work.
What are some alternatives?
When comparing mock and mox you can also consider the following projects:
meck - A mocking library for Erlang
Stubr - Stubr is a set of functions helping people to create stubs and spies in Elixir.
ex_machina - Create test data for Elixir applications
ExVCR - HTTP request/response recording library for elixir, inspired by VCR.
patch - Ergonomic Mocking for Elixir
ecto_it - Ecto plugin with default configuration for repos for testing different ecto plugins with databases
ElixirMock - Creates clean, concurrent, inspectable mocks from elixir modules
Mockery - Simple mocking library for asynchronous testing in Elixir.
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.