2 ms·
> We also seem to be obsessed with testing that is half-way between unit level testing and system level testing I think that's where most testing should live.
by rkangel 6y ago
> We also seem to be obsessed with testing that is half-way between unit level testing and system level testing
I think that's where most testing should live. Testing single modules means you don't test how they plug together and makes it hard to refactor responsibilities between modules, such that it often doesn't happen. Full system level testing is painful to write as you often have to mock out the world, and painful to run as it it usually slow.
The middle ground where you test a block of modules together through the top interface is a great middle ground. It does not replace the others- you need some full system level testing to check that your system integrates properly, and most modules will need some unit testing (and some will need a lot), but it's the best "bang for your buck" in terms of invested effort.