Concordion Plus
I've written in the past about Using English to write Acceptance Tests and the tool I choose/advocate is without doubt Concordion. Customers love seeing their stories come alive, but I've found developers can sometimes struggle to differentiate these from JUnit tests, particularly since JUnit is used to provide the execution mechanism.
I've also found that in many of the situations/organisations where I have introduced Concordion, a single story has required several tests and although the Concordion guide does present some excellent techniques to deal with this, teams new to writing acceptance tests will be uncomfortable capturing stories in this format and customers might not be happy that all their acceptance criteria are being met. I am therefore pleased to be releasing Concordion+ to the wild. At the moment it is a simple extension to Concordion which allows developers to create individual scenarios (or test cases) within a single story and also to ignore the scenarios they are actively working on. In addition, a new JUnit runner captures the state of each of these scenarios independently and reports them in the common IDEs while also allowing developers to use the JUnit @Before and @After annotations. This should simplify adoption by developers since they now have a JUnit lifecycle they understand.
I have to send a huge thank you to Nigel Charman for the concordion-extensions project which helped immensely with my development. And of course I can't dare not mention the excellent work by David Peterson on Concordion itself and particularly the facility to write extensions 😉
I hope you enjoy using it as much as I enjoyed creating it...
My Links
Recent Posts
- The Value of Passion
- From Behind Closed Doors
- Top Tips – Advanced Acceptance Test Driven Development
- Why Bother with Automated Acceptance Tests
- Agile, a poem
- Updated – Agile Hitler – He’s Using Git
- Dusting off Rework
- Concordion Plus
- My Stories Are Bigger Than Your Story
- Digital Charity Shop
Blogroll
- Alistair Cockburn
- Andy Hunt
- Ben Hoskins
- Dan North
- Dave Thomas
- David Peterson
- Gojko Adzic
- James Shore
- Jim Highsmith
- Joel On Software
- Martin Fowler
- Michael Feathers
- Nigel Charman
- Object Mentor
- Portia Tung
- Scott Ambler
- Stephen Walther
- Ward Cunningham
April 13th, 2011 - 22:50
Great work Mark! This has been on my backlog for a while, so it’s awesome that someone’s done it.
Are you going to announce on the Concordion list?
We had a team try it yesterday, who already had their own timing extension on each example. We found that Concordion has a restriction of 1 command per HTML element. I’d like to discuss this further on the Concordion list, but didn’t want to pre-announce your extension 🙂
April 14th, 2011 - 00:41
I encountered the same problem, but it’s quite simple to just nest divs so went for the simplest route with less code 😉
I also missed the ability to preload the specification to determine the scenarios before executing the tests but that would have required a breaking change in the Concordion codebase 🙁
April 16th, 2011 - 06:33
Excellent work mate. Some very useful additions!