I was a bit unhappy with the state of unit testing and wanted a better experience when hacking on GitHub - adisbladis/pyproject.nix so I ended up forking GitHub - nix-community/nix-eval-jobs: Parallel nix evaluator with a streamable json output [maintainers @Mic92, @adisbladis] and turned it into a test runner rather than a threaded evaluator.
My previous test suite was a Python one that first inspected the test attribute names and then fired off one Nix process per attribute. This instead uses the Nix C++ API and allows you to do the same per-attribute eval failure catching without the process overhead.
My test runs locally took 3.5s for 50 tests and are now down to 70ms.