Unit tests are the foundational element in the testing pyramid. In theory, codebases should have more of those than any other kind. Fortunately unit tests area also the fastest to run.
A good unit test examines a specific scenario using the required minimal input and then verifies that the system has reached a specific state. This could prove quite a challenge when the unit of work requires complex input, or if the resulting state is difficult to isolate from the rest of the system. When faced