Part of agile software development is the practice of acceptance testing to ensure the appropriate business requirements, use cases, and ensure confidence in the delivered product. This process is commonly recommended to be automated so the tests can be easily run at a given time as well as be consistent. James Shore created and encouraged the agile community to use his automated testing framework (Fit) to create these tests.
The problem is that it was meant for the business to be creating these tests, not the developers, however, it turns out that the developers were tasked with creating them instead which is a “maintenance burden”.
Shore now believes that automating the acceptance testing is not a good idea, summarized by the following two points:
1. The real planned benefit of an automated acceptance tool, like Fit, was that the business folks (“customers”) would write executable examples themselves. History has shown that very rarely occurs. In a few cases testers do, but in the majority of cases these tests are written by the developers.
2. These tests often become a real maintenance burden, as they are slow and brittle, and often hard to refactor. On this point, that end-to-end “integration tests” present a higher cost than they are worth, JB Rainsberger has a great series of articles explaining his rational why.
What do you think?
Full article on InfoQ: http://bit.ly/a2002q