Author: agudian
Date: Fri Oct 31 15:57:48 2014
New Revision: 927527
Log:
Fix section formatting for "Parallel Test Execution and Single Thread Execution"
Modified:
websites/production/maven/content/surefire-archives/surefire-2.18/maven-failsafe-plugin/examples/fork-options-and-parallel-execution.html
websites/production/maven/content/surefire-archives/surefire-2.18/maven-surefire-plugin/examples/fork-options-and-parallel-execution.html
Modified:
websites/production/maven/content/surefire-archives/surefire-2.18/maven-failsafe-plugin/examples/fork-options-and-parallel-execution.html
==============================================================================
---
websites/production/maven/content/surefire-archives/surefire-2.18/maven-failsafe-plugin/examples/fork-options-and-parallel-execution.html
(original)
+++
websites/production/maven/content/surefire-archives/surefire-2.18/maven-failsafe-plugin/examples/fork-options-and-parallel-execution.html
Fri Oct 31 15:57:48 2014
@@ -700,10 +700,10 @@
<p>The surefire is always trying to reuse threads, optimize the thread-counts,
and prefers thread fairness.</p>
<p>The parameters <tt>parallelTestsTimeoutInSeconds</tt> and
<tt>parallelTestsTimeoutForcedInSeconds</tt> are used to specify an optional
timeout in parallel execution. If the timeout is elapsed, the plugin prints the
summary log with ERROR lines: <i>"These tests were executed in prior to
the shutdown operation"</i>, and <i>"These tests are
incomplete"</i> if the running Threads were <b>interrupted</b>.</p>
<p><b>The important thing to remember</b> with the <tt>parallel</tt> option
is: the concurrency happens within the same JVM process. That is efficient in
terms of memory and execution time, but you may be more vulnerable towards race
conditions or other unexpected and hard to reproduce behavior.</p>
-<p>The other possibility for parallel test execution is setting the parameter
<tt>forkCount</tt> to a value higher than 1. The next section covers the
details about this and the related <tt>reuseForks</tt> property.</p>
-<ul>
-<li>Parallel Test Execution and Single Thread Execution
-<p>As mentioned above the <tt>parallel</tt> test execution is used with
specific thread count. Since of Surefire 2.18, you can apply the JCIP
annotation <tt>@net.jcip.annotations.NotThreadSafe</tt> on the Java class of
JUnit test (test class, Suite, Parameterized, etc.) in order to execute it in
single Thread instance. The Thread has name
"maven-surefire-plugin@NotThreadSafe". Just use the dependency
net.jcip:jcip-annotations:1.0, or another Artifact with Apache License
com.github.stephenc.jcip:jcip-annotations:1.0-1. This way parallel execution of
tests classes annotated with <tt>@NotThreadSafe</tt> are forked in single
thread instance (don't mean forked JVM process). If the Suite or Parameterized
is annotated with @NotThreadSafe, the suite classes are executed in single
thread. You can also annotate test class referenced by Suite, and the other
unannotated test classes in the Suite can be subject to run in parallel. Note:
As designed by JUnit runners, the static methods
annotated with @BeforeClass and @AfterClass are called in parent thread.
Assign classes to the @NotThreadSafe Suite to prevent from this
trouble.</p></li></ul></div>
+<p>The other possibility for parallel test execution is setting the parameter
<tt>forkCount</tt> to a value higher than 1. The next section covers the
details about this and the related <tt>reuseForks</tt> property.</p></div>
+<div class="section">
+<h3><a name="Parallel_Test_Execution_and_Single_Thread_Execution"></a>Parallel
Test Execution and Single Thread Execution</h3>
+<p>As mentioned above the <tt>parallel</tt> test execution is used with
specific thread count. Since of Surefire 2.18, you can apply the JCIP
annotation <tt>@net.jcip.annotations.NotThreadSafe</tt> on the Java class of
JUnit test (test class, Suite, Parameterized, etc.) in order to execute it in
single Thread instance. The Thread has name
"maven-surefire-plugin@NotThreadSafe". Just use the dependency
net.jcip:jcip-annotations:1.0, or another Artifact with Apache License
com.github.stephenc.jcip:jcip-annotations:1.0-1. This way parallel execution of
tests classes annotated with <tt>@NotThreadSafe</tt> are forked in single
thread instance (don't mean forked JVM process). If the Suite or Parameterized
is annotated with @NotThreadSafe, the suite classes are executed in single
thread. You can also annotate test class referenced by Suite, and the other
unannotated test classes in the Suite can be subject to run in parallel. Note:
As designed by JUnit runners, the static methods
annotated with @BeforeClass and @AfterClass are called in parent thread.
Assign classes to the @NotThreadSafe Suite to prevent from this
trouble.</p></div>
<div class="section">
<h3><a
name="Parallel_Surefire_Execution_in_Multi-Module_Maven_Parallel_Build"></a>Parallel
Surefire Execution in Multi-Module Maven Parallel Build</h3>
<p>Maven core allows building modules of multi-module projects in parallel
with the command line option <tt>-T</tt>. This <i>multiplies</i> the extent of
concurrency configured directly in Surefire.</p></div>
Modified:
websites/production/maven/content/surefire-archives/surefire-2.18/maven-surefire-plugin/examples/fork-options-and-parallel-execution.html
==============================================================================
---
websites/production/maven/content/surefire-archives/surefire-2.18/maven-surefire-plugin/examples/fork-options-and-parallel-execution.html
(original)
+++
websites/production/maven/content/surefire-archives/surefire-2.18/maven-surefire-plugin/examples/fork-options-and-parallel-execution.html
Fri Oct 31 15:57:48 2014
@@ -704,10 +704,10 @@
<p>The surefire is always trying to reuse threads, optimize the thread-counts,
and prefers thread fairness.</p>
<p>The parameters <tt>parallelTestsTimeoutInSeconds</tt> and
<tt>parallelTestsTimeoutForcedInSeconds</tt> are used to specify an optional
timeout in parallel execution. If the timeout is elapsed, the plugin prints the
summary log with ERROR lines: <i>"These tests were executed in prior to
the shutdown operation"</i>, and <i>"These tests are
incomplete"</i> if the running Threads were <b>interrupted</b>.</p>
<p><b>The important thing to remember</b> with the <tt>parallel</tt> option
is: the concurrency happens within the same JVM process. That is efficient in
terms of memory and execution time, but you may be more vulnerable towards race
conditions or other unexpected and hard to reproduce behavior.</p>
-<p>The other possibility for parallel test execution is setting the parameter
<tt>forkCount</tt> to a value higher than 1. The next section covers the
details about this and the related <tt>reuseForks</tt> property.</p>
-<ul>
-<li>Parallel Test Execution and Single Thread Execution
-<p>As mentioned above the <tt>parallel</tt> test execution is used with
specific thread count. Since of Surefire 2.18, you can apply the JCIP
annotation <tt>@net.jcip.annotations.NotThreadSafe</tt> on the Java class of
JUnit test (test class, Suite, Parameterized, etc.) in order to execute it in
single Thread instance. The Thread has name
"maven-surefire-plugin@NotThreadSafe". Just use the dependency
net.jcip:jcip-annotations:1.0, or another Artifact with Apache License
com.github.stephenc.jcip:jcip-annotations:1.0-1. This way parallel execution of
tests classes annotated with <tt>@NotThreadSafe</tt> are forked in single
thread instance (don't mean forked JVM process). If the Suite or Parameterized
is annotated with @NotThreadSafe, the suite classes are executed in single
thread. You can also annotate test class referenced by Suite, and the other
unannotated test classes in the Suite can be subject to run in parallel. Note:
As designed by JUnit runners, the static methods
annotated with @BeforeClass and @AfterClass are called in parent thread.
Assign classes to the @NotThreadSafe Suite to prevent from this
trouble.</p></li></ul></div>
+<p>The other possibility for parallel test execution is setting the parameter
<tt>forkCount</tt> to a value higher than 1. The next section covers the
details about this and the related <tt>reuseForks</tt> property.</p></div>
+<div class="section">
+<h3><a name="Parallel_Test_Execution_and_Single_Thread_Execution"></a>Parallel
Test Execution and Single Thread Execution</h3>
+<p>As mentioned above the <tt>parallel</tt> test execution is used with
specific thread count. Since of Surefire 2.18, you can apply the JCIP
annotation <tt>@net.jcip.annotations.NotThreadSafe</tt> on the Java class of
JUnit test (test class, Suite, Parameterized, etc.) in order to execute it in
single Thread instance. The Thread has name
"maven-surefire-plugin@NotThreadSafe". Just use the dependency
net.jcip:jcip-annotations:1.0, or another Artifact with Apache License
com.github.stephenc.jcip:jcip-annotations:1.0-1. This way parallel execution of
tests classes annotated with <tt>@NotThreadSafe</tt> are forked in single
thread instance (don't mean forked JVM process). If the Suite or Parameterized
is annotated with @NotThreadSafe, the suite classes are executed in single
thread. You can also annotate test class referenced by Suite, and the other
unannotated test classes in the Suite can be subject to run in parallel. Note:
As designed by JUnit runners, the static methods
annotated with @BeforeClass and @AfterClass are called in parent thread.
Assign classes to the @NotThreadSafe Suite to prevent from this
trouble.</p></div>
<div class="section">
<h3><a
name="Parallel_Surefire_Execution_in_Multi-Module_Maven_Parallel_Build"></a>Parallel
Surefire Execution in Multi-Module Maven Parallel Build</h3>
<p>Maven core allows building modules of multi-module projects in parallel
with the command line option <tt>-T</tt>. This <i>multiplies</i> the extent of
concurrency configured directly in Surefire.</p></div>