You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by kr...@apache.org on 2012/02/07 21:13:44 UTC
svn commit: r1241590 -
/maven/surefire/trunk/maven-surefire-plugin/src/site/apt/developing.apt.vm
Author: krosenvold
Date: Tue Feb 7 20:13:44 2012
New Revision: 1241590
URL: http://svn.apache.org/viewvc?rev=1241590&view=rev
Log:
o Updated docs on how to debug/attach debugger
Modified:
maven/surefire/trunk/maven-surefire-plugin/src/site/apt/developing.apt.vm
Modified: maven/surefire/trunk/maven-surefire-plugin/src/site/apt/developing.apt.vm
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/maven-surefire-plugin/src/site/apt/developing.apt.vm?rev=1241590&r1=1241589&r2=1241590&view=diff
==============================================================================
--- maven/surefire/trunk/maven-surefire-plugin/src/site/apt/developing.apt.vm (original)
+++ maven/surefire/trunk/maven-surefire-plugin/src/site/apt/developing.apt.vm Tue Feb 7 20:13:44 2012
@@ -39,25 +39,36 @@ Developer Center
http://svn.apache.org/repos/asf/maven/surefire/trunk and
build from there.
-* Essential source code reading list
-
- Some methods/classes reveal more about the basic working of a piece of code than others. The enclosed classes/methods
- are a "reading list" for getting quickly acquainted with the code:
-
- AbstractSurefireMojo#executeAllProviders
- ForkStarter#fork
- ForkedBooter#main
+* Making testcases for demonstrating problems
-* JDK Versions
+ When reporting an issue, it is immensely useful to create a small sample project
+ that demonstrates the problem. Surefire already contains a large number of such
+ projects, and they can be found at
+ https://svn.apache.org/repos/asf/maven/surefire/trunk/surefire-integration-tests/src/test/resources/
+ Typically you can check out one of the pre-existing projects and run it like this:
+
++---+
+svn co https://svn.apache.org/repos/asf/maven/surefire/trunk/surefire-integration-tests/src/test/resources/failsafe-buildfail
+cd failsafe-buildfail
+mvn -Dsurefire.version=2.12 verify
++---+
+
+* Attaching a debugger
+
+ Sometimes it's appropriate to attach a remote debugger to the surefire fork to try to determine what
+ is /really/ going on. If you checkout & build trunk, you'd usually do something like this:
+
++---+
+ mvn -Dmaven.surefire.debug=true install
++---+
- The surefire booter is capable of booting all the way back to jdk1.3. Specifically
- this means surefire-api, surefire-booter, common-junit3 and surefire-junit3 are
- source/target 1.3. The plugin and several providers are 1.5.
+ Load the source in your IDE, set a breakpoint at the start of ForkedBooter#main and attach
+ a debugger to port 5005.
* TestCases
All patches to surefire must contain test coverage, either as an integration test
- or a unit test. All new fearures (changed/added plugin options) must be covered by
+ or a unit test. All new features (changed/added plugin options) must be covered by
and end-to-end integration test.
There are
@@ -67,6 +78,25 @@ Developer Center
Example integration tests are Surefire141PluggableProvidersIT and the corresponding
surefire-integration-tests/src/test/resources/surefire-141-pluggableproviders.
+
+* Essential source code reading list
+
+ Some methods/classes reveal more about the basic working of a piece of code than others. The enclosed classes/methods
+ are a "reading list" for getting quickly acquainted with the code:
+
++---+
+AbstractSurefireMojo#executeAllProviders
+ForkStarter#fork
+ForkedBooter#main
++---+
+
+* JDK Versions
+
+ The surefire booter is capable of booting all the way back to jdk1.3. Specifically
+ this means surefire-api, surefire-booter, common-junit3 and surefire-junit3 are
+ source/target 1.3. The plugin and several providers are 1.5.
+
+
* Provider Isolation
Classes in the SUT (Subject Under Test), override any classes within the
@@ -94,5 +124,4 @@ Developer Center
Surefire depends on a previous version of itself, which
is too advanced for maven 2.2.x dependency resolution, and maven 3.x is
- required to build surefire. Until a 3.x site plugin is released the site
- for surefire has to be deployed with mvn 2.2.1 (using -N option).
\ No newline at end of file
+ required to build surefire
\ No newline at end of file