Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

9
  • 17
    +1 for "A test that is a perfect mirror of its implementation isn't really testing anything at all." All too common. I call this the Doppelganger Antipattern. Commented Nov 3, 2015 at 22:26
  • 9
    A contrarian school of software QA, the context-driven testing movement, is in part devoted to disputing that there exist any such useful general rules of thumb as the Testing Pyramid. In particular, the seminal texts of the movement give many examples where integration tests are far more valuable than other kinds of tests (because they test the system in context, as a system).... Commented Nov 3, 2015 at 22:32
  • 10
    ... consequently, Fowler et al., in arguing that less effort should be spent on integration tests and user acceptance tests because they are too difficult to write in a robust and maintainable way, are really just providing an ex post facto excuse for why they haven't figured out how to test well at higher levels. Commented Nov 3, 2015 at 22:38
  • 1
    @dodgethesteamroller In-depth discussions of a "contrarian school" like that are probably best suited to their own answer. Personally, I find that the Google Testing Blog does a pretty good job describing the virtues of fast, tightly-scoped automated tests alongside system-in-context tests. In case you found it unclear, I list the test pyramid here as a useful model or starting point, not as an excuse to stop thinking as an engineer. Commented Nov 3, 2015 at 23:01
  • 2
    Highly recommended presentation on the hierarchy and ratio of unittests to integration tests: vimeo.com/80533536 Very well explained. Commented Nov 6, 2015 at 19:38