Right. Finally got StoryQ working with CruiseControl.Net. Its really cool :) Essentially:
Once my unit tests have run, the build copies the storyq.xml file into the build results directory. All of our build results have the format
*-results.xml, so I rename the output to follow that convention. So, to do this I run the following nant task:
where 'unittests.dir' and 'results.dir' are the locations of the unit test output and build results respectively.
The CruiseControl.Net config file (ccnet.config) is configured to pick up all of my build results and combine them into my build log, so I didn't need to make any changes here:
To provide a summary report I created a 'storyq-summary.xsl' file to process the build results and create the summary results. This is copied to the webdashboard \xsl subdirectory.
I then added the the following lines in the webdashboard \dashboard.config file:
To allow access to StoryQ's detailed output I had to do some 'manipulation' of the StoryQ-SimpleHtml.xslt to get it to work with CruiseControl.Net. The one provided with StoryQ nearly works, but spits out some random garbage at the top of the page (this
was the contents of the CruiseControl build file!!), and also there are some issues with using the styling on standard html elements such as <table> and <h1> etc..
I am a beginner at xslt, but I got this working properly by creating a new template at the top-level and fixing the styles to use css classes. I then renamed it as
'StoryQ-SimpleHtml.xsl' and copied it to CruiseControl's 'webdashboard\xsl' subdirectory.
I then added the the following lines in the webdashboard\dashboard.config file:
<xslReportBuildPlugin description="StoryQ Report" actionName="StoryQBuildReport" xslFileName="xsl\StoryQ-SimpleHtml.xsl" />
So I have create two extra files, storyq-summary.xsl and
StoryQ-SimpleHtml.xsl that are required to be able to view the results in the CruiseControl.Net web portal. I can send them if required.
StoryQ is now fully integrated with CruiseControl.Net and I can make myself a cup of tea :)