Following from the London GGUG talk we gave on Wednesday it was time to provide the widercommunity some visibility on the reference testing application which showcases a full running application with some sample user stories. In this app you will find examples showing
- unit tests (defined against the new testing plugin, 0.3)
- domain/command objects
- controllers
- taglib
- plain old groovy objects
- JSUnit
- EasyB
-
integration tests
- acceptance testing
You can checkout the project at
inside of which the presentation we made is provided and can be accessed directly at
Sadly the video of the presentation has not been digitized following some technical snafu causing the loss of sound on the recording with the Skills Matter equipment :(
Running the application
The app ships *without* any of the required plugins installed so to enable the most very basic test run (test-app) you will at least need the testing-plugin developed by Peter Ledbrook @ G2One. The latest 0.3 version presently available will need to be installed, which simply involves issuing command
grails install-plugin testing
in the root of the project folder
For the remaining testing types the installation of the plugins should not interfere with the existing reference test examples .. they are already created and checked into the correct locations for them to run following a plugin install
JSUnit
Again, you need to install the plugin to run the test examples for Javascript testing
grails install-plugin jsunit
For further information on how to run the tests locally follow the grails page: the main point is you need to provide a path (and on windows you will need to give 8.3 short names, since spaces aren't handled) to Firefox
Selenium
Install the plugin
grails install-plugin selenium
Then run-app in one console and in another
grails run-selenium ${path-to-browser}
EasyB
By far the most experimental part of the project is the integration of EasyB BDD for Groovy with Grails.
Should you wish to explore this you will have to install the plugin for this directly as a zip from
The examples which are shown test (at a unit level)
and integration wise
These are liable to be changed to use the testing plugin example also at some stage in the coming two weeks.
Outstanding
I have yet to complete the examples for webtest, but will aim to do so a soon as its possible.
Feedback
I would welcome any feedback and any examples people would like added or updated, or suggestions for more examples/plugins etc.
The project is provided as-is with no warranty or guarantees! I strive to make sure it is not broken or with issues, but as with all part time projects you should be aware that sometimes things go wrong.
When making feedback it may be preferable to contact me directly unless the material under discussion has relevance to the list.
When reporting issues please outline
- What plugins you have installed
- What piece of code is at issue
- Steps you undertook to create the issue
- (if available) your code fix that you found resolved it
Hope this if of use to people
Cheers