One downside of this approach is a loss of transparency of what the tests are actually doing. The "fixtures" are often written by developers, which may need a leap in faith for testers to trust. On a recent project, this trust was dented when the tests didn't do what they were supposed to be doing.
With this in mind, I set out to provide more insight into what our tests are actually doing, without undermining the principles of acceptance testing.
The result is a logging extension for Concordion. This adds a "tooltip" to the Concordion output HTML that shows log output when hovered over:
This tooltip is proving useful not only to testers, but also for developers to gain insight into what is happening in their tests and to find performance improvements. For example, in the above example we were surprised to see the web page being loaded twice, and a number of element lookups being duplicated.
This approach could also be used for user documentation of the steps required to complete an action, potentially with screen shots, or even as an embedded screen cast.
We've added a new extension mechanism to Concordion 1.4.1 to make it easy to add features such as this.
This extension is available on Github. The extension captures java.util.logging output and has a number of configuration options. You'll need to set the
concordion.extensionssystem property to use it - see the README for details.
For a example using this Concordion extension with WebDriver, see the demo project .
UPDATESOct 4 2010. Changed github link to new concordion-extensions project Oct 6 2010. Source code moved to trunk of Concordion Oct 24 2010. Updated to reference Concordion 1.4.1 and concordion-extension-demo project Jan 03 2011. Project moved to Google Code and docs to Concordion site.
Oct 26 2014. Updated links to new Github projects.