Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Lunch & Learn - Property Based Testing
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Mickael Metesreau
December 21, 2016
Programming
66
0
Share
Lunch & Learn - Property Based Testing
Mickael Metesreau
December 21, 2016
More Decks by Mickael Metesreau
See All by Mickael Metesreau
Fear the Ponies
mmetesreau
0
160
Alt.Net Talks - Make type system great again
mmetesreau
0
91
Alt.Net Talks - The Actor Model
mmetesreau
0
55
Betclic Dojo - Where is Fluffy?
mmetesreau
0
76
Mini training - EventStore
mmetesreau
0
72
Alt.Net Talks - EdgeJs
mmetesreau
0
300
Betclic Dojo - Extreme Carpaccio
mmetesreau
0
130
Betclic Dojo - Game of life
mmetesreau
0
43
Mini training - Containerization and Docker
mmetesreau
0
450
Other Decks in Programming
See All in Programming
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
350
Spec-driven Development: How AI Changes Everything (And Nothing)
simas
PRO
0
140
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
4
360
Oxlintとeslint-plugin-react-hooks 明日から始められそう?
t6adev
0
280
第3木曜LT会 #28
tinykitten
PRO
0
110
GitHubCopilotCLIをはじめよう.pdf
htkym
0
270
ふりがな Deep Dive try! Swift Tokyo 2026
watura
0
230
エラー処理の温故知新 / history of error handling technic
ryotanakaya
6
1.4k
実用!Hono RPC2026
yodaka
2
270
実践CRDT
tamadeveloper
0
590
Claude CodeでETLジョブ実行テストを自動化してみた
yoshikikasama
0
800
tRPCの概要と少しだけパフォーマンス
misoton665
2
240
Featured
See All Featured
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
110
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Accessibility Awareness
sabderemane
1
100
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
53k
Building an army of robots
kneath
306
46k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
490
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
490
The Cult of Friendly URLs
andyhume
79
6.8k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
140
A better future with KSS
kneath
240
18k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
150
Transcript
Lunch & Learn Property based Testing
What is a Property? Something always true in a given
context
Could be Strong The total is the sum of the
elements The answer is always 42 …
But most of the time, it’s weak The appointment is
always in the future The invoice is never negative …
A test only validate one specific case
Wait, we also have parameterized tests
Yes but we go further with random generators
Let me introduce FsCheck A port of Haskell’s Quickcheck for
.NET
Generator: easily generates a number of random values for many
types Shrinker: tries to find the mininal counter example that still fails the property
None
Property based testing don’t replace unit testing
Property based testing test a lot of random cases cheaply
Random??? So what does green mean? Testing show the presence,
not the absence of bug E. W. Dijktra
Finding good properties is hard
But it is worth to think about general properties of
your business
Thanks QuickCheck: A Lightweight Tool for Random Testing of Haskell
Programs http://www.cs.tufts.edu/~nr/cs257/archive/john-hughes/quick.pdf An introduction to property-based testing http://fsharpforfunandprofit.com/posts/property-based-testing/ FsCheck https://fscheck.github.io/FsCheck/