Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Property Based Testing #93

Open
Danwhy opened this issue Oct 24, 2018 · 3 comments
Open

Property Based Testing #93

Danwhy opened this issue Oct 24, 2018 · 3 comments
Labels
enhancement New feature or enhancement of existing functionality

Comments

@Danwhy
Copy link
Member

Danwhy commented Oct 24, 2018

Property based tests are tests that assert certain properties are always satisfied by your code. Instead of just testing that your code works on one input, they provide a range of inputs, making sure the property is satisfied every time. This article is a good introduction to property based testing in general.

Property based testing is very popular among the functional language community, including Elixir.

Articles

Books

Videos

@nelsonic nelsonic added the enhancement New feature or enhancement of existing functionality label Oct 24, 2018
@nelsonic
Copy link
Member

Property based testing in JavaScript with JSVerify:
https://hackernoon.com/property-based-testing-4330e3e77381

I'm not recommending that anyone write JS long term,
this is relevant to anyone who is not yet fluent in Elixir/Elm
or people who are stuck in JS-land for whatever reason.
see: https://github.com/jsverify/jsverify

"Testing shows the presence, not the absence of bugs". ~ Edsger W. Dijkstra

@Danwhy
Copy link
Member Author

Danwhy commented Nov 19, 2018

ElixirConf 2018 - Picking Properties to Test in Property Based Testing - Michael Stalker

@Danwhy
Copy link
Member Author

Danwhy commented Feb 5, 2019

Guide coming soon: https://github.com/dwyl/learn-property-based-testing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or enhancement of existing functionality
Projects
None yet
Development

No branches or pull requests

2 participants