Property-Based Testing – Testing Assumptions You Don’t Know You’re Making
Finding good test input can be tricky. Even with loads of unit tests, bugs still get through. Consider a wear-leveling algorithm for flash memory — it takes a series of write operations and spreads them over the flash, because individual blocks can only be written and erased so many times before they wear out. If […]