Gitnesse
Gitnesse is an acceptance testing tool.
It enables a project to store Cucumber feature stories in a git-based wiki, test them against your code, and then update the wiki with the latest test results.
Conceptually influenced by Fitnesse http://fitnesse.org/ thank you Uncle Bob!
Installation
Add this line to your application's Gemfile:
gem 'gitnesse'
And then execute:
$ bundle
Or install it yourself as:
$ gem install gitnesse
Create a gitnesse.rb
file somewhere in your project, and add something like
the following to it:
Gitnesse.configure do |config|
config.repository_url = "[email protected]:hybridgroup/gitnesse-demo.wiki"
config.annotate_results = true
config.info = "Bob Martin's development laptop"
end
rake tasks
$ rake gitnesse:pull
$ rake gitnesse:push
$ rake gitnesse:run
$ rake gitnesse:info
$ rake gitnesse:push_results
Usage In Rails 3
For Rails 3 the rake tasks should automatically just appear, as long as you have added the gitnesse gem to your Gemfile.
There is an example application using Rails 3 located here: https://github.com/hybridgroup/gitnesse-example-rails
Usage In Sinatra
To use gitnesse in a Sinatra application, simple add this line of code to your Rakefile:
require "gitnesse/tasks"
There is an example application using Sinatra located here: https://github.com/hybridgroup/gitnesse-example-sinatra
Other Usage
Want to use plain old Gitnesse? There is an executable, if you're allergic to rake tasks:
$ gitnesse
TODO
- pluggable feature runners, so can be used with Spinach, Cucumber-JS, or ?
- standalone server so end users to run tests and see live results, just like Fitnesse
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request