You Don't Hate Mocks; You Hate Side Effects

Yeah, that's exactly it, well said! I've worked on a legacy system for a long time, and was never allowed to re-write things as I go. But, if I were to re-write, there's a heck of a lot of session.setAttribute(...) and request.setAttribute(...), where really those should be wrapped in a model class, so that I can have one single mock assertion to prove the JSP page is getting what it needs to work. So in that case, I significantly reduce the number of mock assertions from say 20, down to 1 or 2.