Critiquing tests

Two attempts to measure the quality of automated test suites.

@ploeh Good write-up! Having recently seen a bunch of tests (written by humans) that didn't actually verify anything useful, I'd add heavy reliance on mocking and method call verification as a heuristic for bad tests. While mocking is useful, it can easily lead to tests that only check that a method whose implementation consists of calls to 2 other methods is indeed calling these 2 methods, without this saying anything about the correctness of this implementation.
@sebhans Thank you. I agree that one should generally avoid dynamic Test Double libraries: https://blog.ploeh.dk/2022/10/17/stubs-and-mocks-break-encapsulation
Stubs and mocks break encapsulation

Favour Fakes over dynamic mocks.