You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by vb...@apache.org on 2008/04/03 02:31:36 UTC

svn commit: r644121 - in /incubator/buildr/trunk: CHANGELOG doc/pages/index.textile doc/pages/testing.textile doc/pages/whats_new.textile

Author: vborja
Date: Wed Apr  2 17:31:35 2008
New Revision: 644121

URL: http://svn.apache.org/viewvc?rev=644121&view=rev
Log:
BDD frameworks documentation, updated changelog

Modified:
    incubator/buildr/trunk/CHANGELOG
    incubator/buildr/trunk/doc/pages/index.textile
    incubator/buildr/trunk/doc/pages/testing.textile
    incubator/buildr/trunk/doc/pages/whats_new.textile

Modified: incubator/buildr/trunk/CHANGELOG
URL: http://svn.apache.org/viewvc/incubator/buildr/trunk/CHANGELOG?rev=644121&r1=644120&r2=644121&view=diff
==============================================================================
--- incubator/buildr/trunk/CHANGELOG (original)
+++ incubator/buildr/trunk/CHANGELOG Wed Apr  2 17:31:35 2008
@@ -1,4 +1,7 @@
-1.3.0 (Pending)
+1.3.0 (Pending) 
+* Added: Testing with EasyB (Nicolas Modrzyk).
+* Added: Testing with JBehave (John Layton).
+* Added: Testing with RSpec (Nick Sieger).
 * Added: Nailgun integration for improved user experience when running on
 JRuby.
 * Added: Cobertura tasks can be invoked for a single project using project

Modified: incubator/buildr/trunk/doc/pages/index.textile
URL: http://svn.apache.org/viewvc/incubator/buildr/trunk/doc/pages/index.textile?rev=644121&r1=644120&r2=644121&view=diff
==============================================================================
--- incubator/buildr/trunk/doc/pages/index.textile (original)
+++ incubator/buildr/trunk/doc/pages/index.textile Wed Apr  2 17:31:35 2008
@@ -36,6 +36,7 @@
 * Support for building Scala projects
 * Support for building Groovy projects
 * EAR packages
+* Behaviour-Driven Development frameworks
 * Profiles
 * New API for accessing Java libraries
 * Alternative source layouts

Modified: incubator/buildr/trunk/doc/pages/testing.textile
URL: http://svn.apache.org/viewvc/incubator/buildr/trunk/doc/pages/testing.textile?rev=644121&r1=644120&r2=644121&view=diff
==============================================================================
--- incubator/buildr/trunk/doc/pages/testing.textile (original)
+++ incubator/buildr/trunk/doc/pages/testing.textile Wed Apr  2 17:31:35 2008
@@ -393,3 +393,73 @@
 
 Next, let's talk about "customizing your environment and using
 profiles":settings_profiles.html
+
+h2. Behaviour-Driven Development
+
+Buildr supports using Behaviour-Driven Development(BDD) frameworks for testing
+your java projects, which one to use, is just a matter of preference, mainly
+on what language/tools you feel confortable to use for testing.
+Buildr follows each framework naming conventions, searching for files under
+the @src/spec/{lang}@ directory.
+
+h4. JBehave 
+
+"JBehave":http://jbehave.org/ is a pure java BDD framework, stories and 
+behaviour specifications are written in the java language. 
+
+To use JBehave in your project you can select it with @test.using :jbehave@.
+
+This framework will search for the following patterns under your project:
+   @src/spec/java/**/*Behaviour.java@
+
+Supports the following options:
+
+|_. Option        |_. Value |
+| @:properties@   | Hash of system properties available to the test case. |
+| @:java_args@    | Arguments passed as is to the JVM. |
+
+h4. RSpec
+
+"RSpec":http://rspec.info/ is the de-facto BDD framework for ruby. It's the 
+framework used to test Buildr itself. 
+
+Specifications are written in "Ruby":http://www.ruby-lang.org/en/ language, 
+but are run by using "JRuby":http://jruby.codehaus.org/. 
+That means you have access to all your Java classes and any Java or Ruby 
+tool out there.
+
+To use this framework in your project you can select it with 
+@test.using :rspec@.
+
+This framework will search for the following patterns under your project:
+   @src/spec/ruby/**/*_spec.rb@
+
+Supports the following options:
+
+|_. Option        |_. Value |
+| @:properties@   | Hash of system properties available to the test case. |
+| @:java_args@    | Arguments passed as is to the JVM. |
+
+
+h4. EasyB
+
+"EasyB":http://www.easyb.org/ is a BDD framework using 
+"Groovy":http://groovy.codehaus.org/. 
+
+Specifications are written in the Groovy language, of course you get
+seamless java integration as with all things groovy. 
+
+To use this framework in your project you can select it with 
+@test.using :easyb@.
+
+This framework will search for the following patterns under your project:
+   @src/spec/groovy/**/*Behavior.groovy@
+   @src/spec/groovy/**/*Story.groovy@
+
+Supports the following options:
+
+|_. Option        |_. Value |
+| @:properties@   | Hash of system properties available to the test case. |
+| @:java_args@    | Arguments passed as is to the JVM. |
+| @:format@       | Report format, either :txt or :xml |
+

Modified: incubator/buildr/trunk/doc/pages/whats_new.textile
URL: http://svn.apache.org/viewvc/incubator/buildr/trunk/doc/pages/whats_new.textile?rev=644121&r1=644120&r2=644121&view=diff
==============================================================================
--- incubator/buildr/trunk/doc/pages/whats_new.textile (original)
+++ incubator/buildr/trunk/doc/pages/whats_new.textile Wed Apr  2 17:31:35 2008
@@ -121,6 +121,21 @@
 
 "Read more ...":more_stuff.html#nailgun
 
+h4. Behaviour-Driven Development
+
+Given that many languages are now supported by Buildr, the same is true for
+testing, the convention is to store BDD files under the @src/spec/{lang}@ 
+directory. 
+The following table shows the framework's name you can use to select them 
+for your projects. Buildr follows each framework's naming convention.
+
+|_. test.using     |_. Test file name convention                  |
+| @:jbehave@       |  @src/spec/java/**/*Behaviour.java@            |
+| @:rspec@         |  @src/spec/ruby/**/*_spec.rb@                  |
+| @:easyb@         |  @src/spec/groovy/**/*{Story,Behavior}.groovy@ |
+
+"Read more ...":testing.html#bdd
+
 h4.  Profiles
 
 Different environments may require different configurations, some you will want