factory_girl_elixir alternatives and similar packages
Based on the "Testing" category.
Alternatively, view factory_girl_elixir alternatives based on common mentions on social networks and blogs.
-
hound
Elixir library for writing integration tests and browser automation -
proper
PropEr: a QuickCheck-inspired property-based testing tool for Erlang -
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. -
ExVCR
HTTP request/response recording library for elixir, inspired by VCR. -
StreamData
Data generation and property-based testing for Elixir. ๐ฎ -
propcheck
Property based Testing for Elixir (based upon PropEr) -
excheck
Property-based testing library for Elixir (QuickCheck style). -
amrita
A polite, well mannered and thoroughly upstanding testing framework for Elixir -
ponos
ponos is a simple yet powerful load generator written in erlang -
power_assert
Power Assert in Elixir. Shows evaluation results each expression. -
FakerElixir
[unmaintained] FakerElixir generates fake data for you. -
shouldi
Elixir testing libraries with nested contexts, superior readability, and ease of use -
katt
KATT (Klarna API Testing Tool) is an HTTP-based API testing tool for Erlang. -
FakeServer
FakeServer integrates with ExUnit to make external APIs testing simpler -
Stubr
Stubr is a set of functions helping people to create stubs and spies in Elixir. -
Mockery
Simple mocking library for asynchronous testing in Elixir. -
mix_test_interactive
Interactive watch mode for Elixir's mix test. https://hexdocs.pm/mix_test_interactive/ -
mecks_unit
A simple Elixir package to elegantly mock module functions within (asynchronous) ExUnit tests using Erlang's :meck library -
Walkman
Isolate tests from the real world, inspired by Ruby's VCR. -
test_selector
Elixir library to help selecting the right elements in your tests. -
toxiproxy_ex
ToxiproxyEx is an Elixir API client for the resilience testing tool Toxiproxy. -
mix_erlang_tasks
Common tasks for Erlang projects that use Mix -
ex_parameterized
This library support parameterized test with test_with_params macro. -
cobertura_cover
Output test coverage information in Cobertura-compatible format -
ex_unit_fixtures
A library for defining modular dependencies (fixtures) for ExUnit tests. -
hypermock
HTTP request stubbing and expectation Elixir library -
apocryphal
Swagger based document driven development for ExUnit -
ElixirMock
Creates clean, concurrent, inspectable mocks from elixir modules
ONLYOFFICE Docs โ document collaboration in your environment
Do you think we are missing an alternative of factory_girl_elixir or a related project?
README
FactoryGirlElixir
Minimal implementation of Ruby's factory_girl in Elixir.
This is a rewrite of the factory_boy project to make it work on Elixir v1.0.x.
Usage
Add FactoryGirlElixir as a dependency in your mix.exs
file.
defp deps do
[
{:factory_girl_elixir, "~> 0.1.1"}
]
end
You should also update your applications list to include both projects:
def application do
[applications: [:factory_girl_elixir]]
end
After you are done, run mix deps.get
in your shell to fetch the dependencies.
Defining a Factory
defmodule Factory do
use FactoryGirlElixir.Factory
factory :user do
field :password, "secret"
# create a sequence using an anonymous functions
field :username, fn(n) ->
"username#{n}"
end
# or an anonymous functions shortcut
field :email, &("foo#{&1}@example.com")
end
factory :assets do
field :name, "bob"
end
end
Then query the module to get a list of attributes for your record
user = Factory.attributes_for(:user) #=> %{password: "secret", username: "username1", email: "[email protected]"}
parametrized_user = user |> Factory.parametrize
#=> %{"email" => "[email protected]", "password" => "secret", "username" => "username1"}
You can override attributes
user = Factory.attributes_for(:user, email: "[email protected]")
#=> %{password: "secret", username: "username1", email: "[email protected]"}
Contributing
- Fork this repo
- Create a topic branch -
git checkout -b my_branch
- Push to your branch -
git push origin my_branch
- Create a Pull Request from your branch
- That's it!
Copyright and license
Copyright (c) 2014 Duilio Ruggiero. Code released under [the MIT license](LICENSE).
*Note that all licence references and agreements mentioned in the factory_girl_elixir README section above
are relevant to that project's source code only.