proper VS ex_machina

Compare proper vs ex_machina and see what are their differences.

proper

PropEr: a QuickCheck-inspired property-based testing tool for Erlang (by proper-testing)

ex_machina

Create test data for Elixir applications (by beam-community)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
proper ex_machina
3 2
878 1,871
0.1% 0.3%
3.1 6.8
9 months ago 3 months ago
Erlang Elixir
GNU General Public License v3.0 only MIT License
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.

proper

Posts with mentions or reviews of proper. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-09-03.
  • How programmers make sure that their software is correct
    1 project | news.ycombinator.com | 6 Jan 2022
    > 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
    5 projects | dev.to | 3 Sep 2021
    [1] https://proper-testing.github.io/

ex_machina

Posts with mentions or reviews of ex_machina. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-05-02.
  • Test Data Libraries for Elixir
    4 projects | dev.to | 2 May 2023
    The factory library ExMachina created by Thoughbot uses function names and generates an atom used to call factories. For example:
  • How to write test cases for databse related functions
    3 projects | /r/elixir | 5 Nov 2021
    The well known FactoryBot (FactoryGirl) from rails has a pretty good equivalent in Phoenix as ExMachina (https://github.com/thoughtbot/ex_machina) and does the job really well (thoughtbot is a pretty good and stable contributor too, so a nice Omakase plug-in!)

What are some alternatives?

When comparing proper and ex_machina you can also consider the following projects:

StreamData - Data generation and property-based testing for Elixir. 🔮

faker - Faker is a pure Elixir library for generating fake data.

espec - Elixir Behaviour Driven Development

factory_girl_elixir - Minimal implementation of Ruby's factory_girl in Elixir.

meck - A mocking library for Erlang

blacksmith - Data generation framework for Elixir

Quixir - Property-based testing for Elixir

FakerElixir - [unmaintained] FakerElixir generates fake data for you.

espec_phoenix - ESpec for Phoenix web framework.

hound - Elixir library for writing integration tests and browser automation