`pytest-cases` is a Python package leveraging the widely popular `pytest` library (Krekel et al., 2004) to design tests and benchmarks where test data, tested code, and evaluation protocols are separated in a modular fashion. With `pytest-cases` it has never been so easy for researchers to create reproducible results tables, and for software engineers to build powerfull test harnesses ! The API for `pytest-cases` is as minimal as possible, so that each concept (evaluation protocols, test data, algorithms candidates, user profiles... ) is a readable python function ; this is in line with the design philosophy of `pytest` itself