Loading ...
Sorry, an error occurred while loading the content.
 

Re: [XP] Re: Unit vs Integration TDD

Expand Messages
  • J. B. Rainsberger
    On Fri, Oct 31, 2008 at 5:24 PM, Ron Jeffries ... Not all complexity is accidental. Much, maybe most, but not all. -- J. B. (Joe) Rainsberger ::
    Message 1 of 36 , Nov 1, 2008
      On Fri, Oct 31, 2008 at 5:24 PM, Ron Jeffries
      <ronjeffries@...> wrote:
      > Hello, Matt. On Friday, October 31, 2008, at 4:19:34 PM, you
      > wrote:
      >
      >> The response I usually get from BDD guys is "who cares about testing all
      >> the permutations?" and my response usually is "my boss... since he gets
      >> the irate calls about bugs". :)
      >
      > Perhaps the problem is having the permutations.

      Not all complexity is accidental. Much, maybe most, but not all.
      --
      J. B. (Joe) Rainsberger :: http://www.jbrains.ca
      Your guide to software craftsmanship
      JUnit Recipes: Practical Methods for Programmer Testing
      2005 Gordon Pask Award for contribution Agile Software Practice
    • Rick Mugridge
      ... I believe that it s not the scale of the test that should determine who writes it. It s instead whether the tests expresses stuff that s part of the
      Message 36 of 36 , Nov 8, 2008
        J. B. Rainsberger wrote:
        > I suggest programmers focus on isolated object tests and testers focus
        > on integration and end-to-end tests. If they do that, then they'll
        > come together pretty well at some point.
        > ----

        I believe that it's not the scale of the test that should determine who
        writes it.

        It's instead whether the tests expresses stuff that's part of the
        problem space or part of the solution space. Of course, where that
        boundary sits is critically dependent on the project and who is
        involved. And it changes as the problem, and solution, are better
        understood.

        And there can be several layers, with a solution space at one level
        being a problem space at another. So, for example, I'm happy to use
        storytests for specifying the technical details of communication with
        another system that is managed by another team. And I'm happy to have
        some storytests that mock out that other system so that we can use
        additive "specification"/testing rather than multiplicative across the
        systems. As always, we still need some end-to-end to ensure it's all
        wired together correctly and that failure modes across them are managed
        correctly.

        So I find the usual distinctions between unit tests and end-to-end tests
        and X, Y, Z tests to be unhelpful. As it's too late and too hard to
        refactor the terminology, I try (unsuccessfully) to avoid it.

        I prefer Brian Marick's distinction between customer-facing and
        programmer-facing tests.

        Cheers, Rick
      Your message has been successfully submitted and would be delivered to recipients shortly.