What is JUnit?
JUnit is a test framework for software code that uses annotations to identify methods that specify a test. JUnit is an open-source project hosted at Github.
So, a JUnit test is a method, contained in a class that is only used for testing (a.k.a Test class).
This method executes the code under testing and can assert to check for the expected result versus the actual result.
Executing JUnit test cases in ZebraTester
Executing JUnit test cases with ZebraTester has been supported since ZebraTester version 5.1.
A ZebraTester wizard automatically generates load test JUnit plug-ins (no manual programming needed).
Benefits
Run your JUnit load tests on any load generator
Support for load generator clusters
So, many thousands of JUnit test cases can run in parallel at the same time, and that all of the results are combined to one test report.
ZebraTester Instructions
Initial Set-up
Step | Illustration |
---|---|
1. Prepare a Session with one "Non Executable" URL CallFirst, you need a recorded session that contains only one URL call (that never will be executed). If you haven’t created any session, you can use the PageScanner tool or the Add URL to session. Or, you can load any existing session and remove all URL calls except the first one from that session and set the User's Think Time to a value of zero. | |
2. Configure the URL call as "non-executable"For this example, we are going to take the URL call to the Apica Website and step you through the ZebraTester UI as to how to mark the call as non-executable. This is a special case as you would not normally do this except for a JUnit test case.
| |
Return to the main menuClick refresh to reload the current page. The URL call should now be shown with a yellow exclamation mark. ⚠ | |
Add the JUnit Packages and the Test Package to the SessionBy clicking from the (1) ZebraTester Main Menu on the URL that we set as non-executable, we open the Var Handler page, and from that, we (2) look for the grey folder icon that opens the Declare External Resources (for Self-Developed Plug-ins) menu. At the Declare External Resources menu and (3) add all Java *.jar files that are needed to execute the JUnit test. This means that you have to add the jar files of JUnit itself (for example, junit-4.11.jar and hamcrest-core-1.3.jar) and the jar file that contains your JUnit test (for example CollectionTest.jar), so you end up with a table/list of all declared external resources at the bottom of the dialog. Note: We are continuing with the Apicasystems.com URL from above. | |
Adding a System Properties File (Optional)You can also declare a System Properties File as an external resource. Such a file will be parsed on the load generators just before the JUnit tests are executed. The key and values of such a file are stored in the Java virtual machine as system properties. Hint: To debug the parsing of such a file you can enable the option "debug loops" when starting a load test. The debug output is written to the *.out file of the load test job. | The lines of the file can contain the following commands:
Example saved and declared as an External Resource called “SystemProperties.txt”:
|
Generate a JUnit Load Test Plug-In (WIP)
Once you have loaded all External Resources navigate in the Project Navigator to the Plugins directory and call the JUnit wizard.
Adding a JUnit Plug-In to the Session
Once the Plug-In was generated navigate in the Project Navigator to that directory in which the load test program should be generated.
Generating the Load Test Program with a JUnit Load Test Plug-In (WIP)
Generating the Load Test Program and Executing the Load Test can be done as normal, however, there will be additional steps to gather/zip the external resource files.