Testing with properties using FsCheck

Example-based testing vs Property-based testing. Testovanie na základe špecifikácií nám môže pomôcť testovať scenáre na ktoré nemáme príklady.


Toto je sprievodná diskusia k pôvodnej téme na https://blog.vyvojari.dev/testing-with-properties-using-fscheck
2 Likes

V priklade zo scitanim to skusi vsetky mozne cisla, alebo len nahodne?

Náhodne. FsCheck pracuje s národnými dátami. Máju celú teóriu na to ako vhodne generovať dáta (rozsahy, …). Vieš to ovplyvniť a vieš vytvoriť aj vlastný generátor.
V prípade zlyhania vypíše seed s akým to bolo spúšťané aby si to mohol zreprodukovať, plus to ich shrinkovanie ti nájde najnižšiu kombináciu pri ktorej to neprichádza.

Prave toho, ze by mi to raz preslo a druhykrat nie by som sa bal. Aj ked chapem, ze na pouzitie na ake to bolo vymslene, to asi az tak nevadi.

Záleží na fom čo chceš testovať, ale pokiaľ potrebuješ zabezpečiť, aby sa testy spúšťali opakovane s rovnakými dátami tak môžeš nastaviť seed.

var config = new Configuration
{
     Replay = new Replay(123456789, 100)
};