testing-concept-io-and-computation-separation

blog-post-design-for-testability#io-and-computation-separation

IO is, in general, harder to test than pure code. Testable systems therefore isolate it from the pure logic of the code, to allow them to be tested separately.