Dec
23
2009
I’ve reimplemented the JUnit runner of Trinidad to talk to the latest FitNesse code (and use -c command execution path). The Maven plugin is also working. I’d appreciate if people could test this and see if it still works for them as the old trinidad support was dropped from the FitNesse trunk and will not be supported in the next release.
The beta build of fitnesse trunk can be downloaded using maven from http://maven.neuri.com repository. Use
<dependency>
<groupId>org.fitnesse</groupId>
<artifactId>fitnesse</artifactId>
<version>20091221-SNAPSHOT</version>
</dependency>
Or alternatively download the binary jar directly.
The API is almost the same but some arguments are now obsolete, such as the test engine type. Because tests are executed using FitNesse -c directly, whatever is the selected engine type for the page will be used.
See JUnit Helper examples and FitNesseSuite runner examples with nice reporting for graphical JUnit tools
The Maven plugin also works, grab it from the same maven repository and use version 20091221-SNAPSHOT. Engine type parameter is obsolete and removed. See an example of how to use the plugin or how to directly invoke the target.
Dec
18
2009
At the Agile Specification, BDD and Testing Exchange last month in London, Dan North spoke about selling behaviour driven development to the business. He put forward a relatively controversial idea on estimation: treat all stories as equal. Estimate each story as size 1 and just be done with it. Although this idea might seem overly simplistic, I find it really appealing. Continue Reading »
Dec
16
2009
I got this question today from a blog reader:
They are thinking about using Concordion here. I remember you made some comments about using it. Can it be used sensibly by a tester without lots of dev experience?
Concordion is a great tool for acceptance testing as support for development. Whether it can be used sensibly by a tester without lots of development experience, that depends on what the intended use is. Concordion tests/results are HTML files, so anyone can read them using a browser. I’ve never tried to write Concordion tests using Word or anything similar, only by hand-coding HTML, so I don’t know whether tests can be maintained with a visual tool. However, anyone with basic HTML knowledge should be able to write tests as well. In terms of running the tests, Concordion runs within JUnit/NUnit, so this should be fairly simple as well.
Concordion does not have a test management tool and intentionally doesn’t allow you to reuse or share automation components, so it requires a fair bit of cooperation between developers and testers. I think this is very good for tests that support development, but it might be a problem for retro-fitting regression test packs into an existing product if testers are expected to do the bulk of work.
I wrote a review of concordion last year, which will give you a bit more detail on how it works. I also have a short video about it (.NET oriented but still a good introduction to capabilities):
David Peterson, the author of Concordion, spoke about it at the agile acceptance testing tools round-up event, and that video is also online.
Dec
14
2009
I just packaged and released Trinidad 20091121 to maven repository maven.neuri.com. this version is compiled and linked against the latest stable Fitnesse version 20091121 (which is also deployed to the maven repository with the correct version number). Trinidad is an in-memory test runner for FitNesse (Java) tests which enables you to do some nice things such as run FitNesse tests from JUnit for easier debugging or from Maven for better build system integration, without requiring a running FitNesse server.
A question for you
Here’s a question for the community.
From the next version of FitNesse, all non slim stuff will apparently be decoupled from the core. this includes FIT, FitLibrary and the part of Trinidad that was bundled with FitNesse in several most recent releases. Also, FitNesse got -c option in the most recent release making a large part of Trinidad obsolete. This means that we have two options for the future of trinidad:
1) drop the testing infrastructure. keep JUnit runners and Maven runners but link them directly with FitNesse -c option
2) keep the testing infrastructure in place, maintaining Trinidad as a separate project from FitNesse
option 1 guarantees better compatibility with upcoming fitnesse features and less inconsistencies (eg no potential for trinidad to interpret things differently, skip suite pages etc which happened in the past). However, dropping the testing infrastructure means that html reports generated by Trinidad will no longer be available and that the FitNesse JUnit Test Suite which nicely reports test names in the JUnit window will also not be available.
potentially – if Uncle Bob is OK with this, we could refactor or hack the way FitNesse stores results to enable this kind of reporting to continue.
option 2 means potential inconsistencies and problems going forward as I’d have to sync trinidad with fitnesse code after every release, similar to the early releases which were, honestly, problematic. Doing this properly would probably mean treating fitnesse as a third party system and doing lots of integration testing around it.
which would you prefer?
Dec
14
2009
I’m launching two new Behaviour-Driven Development workshops in late January.
Introduction to BDD is an intensive one day workshop which introduces behaviour-driven development to developers, business analysts and testers. The optional programming module is offered in Java or .NET, with Cucumber to automate BDD scenarios.
Hands-on BDD with Cucumber is a three day workshop which immerses the participants into a project driven by Specification by Example and Behaviour-Driven Development. The workshop is adjusted to fit your business domain and particular needs, so that the participants get real-world experience and instant benefits. It is combines the Introduction to BDD, a day of working on a realistic domain example taken from your recent project or a future phase of a project, and a day of programming exercises for test automation developers. During the workshop, we use Cucumber to manage BDD Scenarios. The programming modules can be either in Java or .NET.
These two workshops are offered at a 20% discount for all bookings made before 31st January 2010. For more information on these and my other workshops, check out the training page.
Both workshops are offered as on-site training only (there are no public workshops scheduled at this time). Contact my company, Neuri Ltd for more information and to book a workshop.