Skip to content

Test suite

Dmitry Latnikov edited this page May 22, 2014 · 9 revisions

Test-suite

Test-suite is a jagger component that describes how long and how often targets will be under load. It contains a list of test-group components. Test-groups will be executed in order, that you have. For example-

<test-suite>
     <test-group id="myFirstSearchTest">
          <test id="jaggerPage" testDescription="jaggerPageTest">
               <load xsi:type="load-tps" value="100" maxThreadNumber="1000"/>
               <termination xsi:type="termination-iterations" iterations="1000" maxDuration="2h"/>
          </test>
     </test-group>
     <test-group id="mySecondSearchTest">
          <test id="googlePage" testDescription="googlePageTest">
               <load xsi:type="load-threads" count="1"/>
               <termination xsi:type="termination-background" />
          </test>
     </test-group>
</test-suite>

myFirstSearchTest will run the first and mySecondSearchTest the second.

Every test-group contains a list of test components. Tests will be executed in parallel mode. If one test must start after delay you can add attribute startDelay to the test.

<test-suite>
     <test-group id="myFirstSearchTest">
          <test id="jaggerPage" testDescription="jaggerPageTest">
               <load xsi:type="load-tps" value="100" maxThreadNumber="1000"/>
               <termination xsi:type="termination-iterations" iterations="1000" maxDuration="2h"/>
          </test>
          <test id="jaggerPageTwo" testDescription="jaggerPageTest" startDelay="30s">
               <load xsi:type="load-threads" count="20" delay="1000"/>
               <termination xsi:type="termination-iterations" iterations="1000" maxDuration="2h"/>
          </test>
          <test id="googlePage" testDescription="googlePageTest">
               <load xsi:type="load-threads" count="1"/>
               <termination xsi:type="termination-background" />
          </test>
     </test-group>
</test-suite>

jaggerPage and googlePage will run parallel.

!Note - don't forget to set id attribute for all test-group and test components. It is necessary to create correct report.

Every test component can be configured by load, termination and test description.

You can turn on or off monitoring for certain test-group component.

Starting from Jagger version 1.2.3

it is possible to add listeners to test suite and some of its components like in example below. Listeners will be triggered by some events like (start/run/stop). More detailed information you can find here: listeners

<test-suite>
     <test-group id="myFirstSearchTest">
          <test id="jaggerPage" testDescription="jaggerPageTest">
               <load xsi:type="load-tps" value="100" maxThreadNumber="1000"/>
               <termination xsi:type="termination-iterations" iterations="1000" maxDuration="2h"/>

               <listeners-test>
                    <listener-test xsi:type="listener-test-ref" ref="listenerTest"/>
               </listeners-test>
          </test>

          <listeners-test-group>
               <listener-test-group xsi:type="listener-test-group-ref" ref="listenerTestGroup"/>
          </listeners-test-group>
     </test-group>

     <listeners-test-suite>
          <listener-test-suite xsi:type="listener-test-suite-ref" ref="listenerTestSuite"/>
     </listeners-test-suite>
</test-suite>