title: JUnit and Surefire Parallel Tests - ForkCount & ThreadCount
body: <p>I'm running Selenium tests on the Selenium Grid using the Surefire Plugin to execute tests.
  In terms of my test breakdown I have several classes, some of which have 1 test in there and some more than one test.</p>
  
  <p>So on my Grid i have 30 chrome web drivers and I want to execute all tests within all classes in parallel.</p>
  
  <p>I've read how to do this using the <code>parallel</code> parameter which i have set as:</p>
  
  <pre><code>            &lt;plugin&gt;
                  &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt;
                  &lt;version&gt;2.17&lt;/version&gt;
                  &lt;configuration&gt;
                      &lt;includes&gt;
                          &lt;include&gt;${testSuite}&lt;/include&gt;
                      &lt;/includes&gt;
                      &lt;parallel&gt;all&lt;/parallel&gt;
                      &lt;useSystemClassLoader&gt;false&lt;/useSystemClassLoader&gt;
                      &lt;perCoreThreadCount&gt;false&lt;/perCoreThreadCount&gt;
                      &lt;threadCount&gt;20&lt;/threadCount&gt;
                      &lt;browser&gt;${browser_type}&lt;/browser&gt;
                  &lt;/configuration&gt;
              &lt;/plugin&gt;
  </code></pre>
  
  <p>However this doesnt seem to fill all the Chrome web drivers I have available.</p>
  
  <p>If i then use <code>forkCount</code>, like:</p>
  
  <pre><code>&lt;forkCount&gt;20&lt;/forkCount&gt;
  &lt;reuseForks&gt;true&lt;/reuseForks&gt;
  </code></pre>
  
  <p>Then when the test execution first starts, all web drivers are filled however it quickly starts dropping and behaving one at a time.</p>
  
  <p>So my questions:</p>
  
  <ul>
  <li>Is there a relationship between forkCount and threadCount </li>
  <li>Is there anything additional I need to do to really get this running in parallel?</li>
  </ul>
  
  <p>Thanks.</p>