This is not actually a controversial opinion, it's kind of just best practice, and many of the best experienced software engineers will already be on board.
But I think the concept is poorly understood. Most people think unit testing (or testing in general) should look like something quite different from how it actually should look.
This is not actually a controversial opinion, it's kind of just best practice, and many of the best experienced software engineers will already be on board.
But I think the concept is poorly understood. Most people think unit testing (or testing in general) should look like something quite different from how it actually should look.
This runs a bit into the clash of philosophies between the "small" function rules from Clean Code and the principles that come from A Philosophy of Software Design, such as modules should be deep. We might discuss that a bit too.
Also related is the way people tend to over-engineer error handling, to the detriment of their application.