Run tests on OpenText Core Performance Engineering
You can run DevWeb load tests from your IDE on OpenText Core Performance Engineering. This enables you to scale up the number of Vusers.
Tip: Check out the video: Integration with OpenText Core Performance Engineering
Preparing for testing
You must have a valid license to run a load test on OpenText Core Performance Engineering, and to obtain information on available cloud locations and OPLG machines.
Refer to the following information sources to help you prepare for testing:
-
To get information within your IDE on usage, available flags, and examples, run a command in the IDE using the following argument:
ScalUP cor -help
-
Review the frequently asked questions section: Scale tests FAQ
-
See the documentation: Help Center
Run load tests from your IDE
In your IDE, you define and run the task to execute the load test.
For an example of running the task from Visual Studio Code, see Scale your test from VS Code
Note: The ScalUP tool uses the system environment variable for http_proxy, https_proxy, or no_proxy, if defined.
- Create your DevWeb script, and test it in OpenText Performance Engineering for Developers.
- Configure the required settings in the cor_uploader.yml file. For details, see Configure the YAML file.
- Open the script in your IDE.
-
Set up a task for the ScalUP tool to run the test.
When setting up the task in your IDE, configure the arguments and flags for the command line using the following format.
Windows %DEVWEB_PATH%\ScalUP.exe cor <flags> run <DevWeb script folder path>
Linux or macOS $DEVWEB_PATH/ScalUP cor <flags> run <DevWeb script folder path>
The following flags are available:
-host= The OpenText Core Performance Engineering host name with http/https protocol. -user= The user name or client ID to log into the machine. -password= The password or secret key to log into the machine. -tenantId= The tenant ID of the user. -projectId= The ID of the project on which the tests are run. -keyLocation= The full path to a key file used to decrypt encrypted strings in the configuration file. -report= The relative or root path to the location for the results report. If a path is not specified, then it is saved by default to the script folder. All flags apart from report can be configured in the cor_uploader.yml file. If you add them in the command line, the flag definitions override the YAML file definitions.
For example, you might add to the command line:
-report=<report location> -user=KimW
Note: We recommend that you do not add sensitive information like passwords in plain text. For details, see Mask and encrypt data.
-
Run the task in the IDE.
If this is the first run for the test using ScalUP, the DevWeb script folder is uploaded to OpenText Core Performance Engineering, and the test is given the label Autogenerated_<script name>. If a test with the same name already exists, the script is updated and used for the test run.
If relevant, the email addresses for the result report are added.
-
The load test is run, using the configuration settings in the relevant uploader configuration file.
When the test is run, any SLA attached to the test is disabled. (The SLA is disabled for the test, not just for the current run.) The test run is given an ID number, for example, #184.
The ID can be used together with the test name to identify the run.
You can watch the run progress from the OpenText Core Performance Engineering UI.
-
When the test is complete, OpenText Performance Engineering for Developers displays the summary report. If email notification is configured, the results are emailed.
You do not need to wait for the task to complete. You can close it locally in your IDE, or the tool exits after reaching the timeout. In both these cases, the test continues to run on OpenText Core Performance Engineering. You can later return to the test in your IDE to see if the run is complete and to get the results. For details, see Get test run results.
Get test run results
You can run a task in your IDE to check the results of the load test on OpenText Core Performance Engineering. This option enables you to get the test results after OpenText Performance Engineering for Developers exited (before test execution was complete and results were available).
Tip:
-
If you want the ScalUP tool to continue to run until the test is finished, configure the value -1 in waitForRunTimeout in the YAML file. For details, see Configure the YAML file.
-
In Visual Studio Code, you can use the Get test run results from OpenText Core Performance Engineering task to get the results.
To get test run results:
-
Configure the arguments for the command line to get the test run results. The following options are available (on Windows OS):
Purpose Command Print a table with all the test run IDs for the test. %DEVWEB_PATH%\ScalUP.exe cor <flags> getResults <script folder path>
Results for the specified run ID.
The applied login information is taken from the cor_uploader.yml file located in the same folder as ScalUP.exe.
%DEVWEB_PATH%\ScalUP.exe cor <flags> getResults <test run ID in OpenText Core Performance Engineering>
Results for the specified run ID.
The cor_uploader.yml file located in the specified script directory overrides the one located with ScalUP.exe.
%DEVWEB_PATH%\ScalUP.exe cor <flags> getResults <test run ID in OpenText Core Performance Engineering> <script folder path>
Note: On Linux or macOS, use
$DEVWEB_PATH/ScalUP
instead of%DEVWEB_PATH%\ScalUP.exe
. - Run the task. The progress pane indicates if the load test is still running, or shows the summary report if it has finished.
- If the test is still running, you can return later and run the getResults task again.
Configure the YAML file
The settings in the primary cor_uploader.yml configuration file (located in the same directory as the ScalUP executable) apply for all scripts that you run on OpenText Core Performance Engineering.
For local configuration, you can copy the cor_uploader.yml file to a specific script directory, and customize the file settings for use with that specific script. During the script run, the settings in the local cor_uploader.yml file override the settings in the original (primary) file.
The cor_uploader.yml file contain customizable default values for the script run, with explanations for each parameter. These settings include:
tenant settings |
These are required values for communication with the machine. These settings can be defined in the cor_uploader.yml file, or in the command line flags. (For details, see Run load tests from your IDE.)
Note: We recommend that you do not add sensitive information like passwords in plain text. For details, see Mask and encrypt data. |
sendEmail | When set to true, the results report for the script run is emailed at the end of the run to the logged-in user. To email to additional recipients, enter one or more email addresses for the emailAddresses property. |
location | Define whether the test is run on cloud locations (default) or on-premises load generators. You then define the specific locations/machines to use. For details, see Define distribution parameters for tests. |
encryption | For encrypted data, define the key location. For details, see Mask and encrypt data. |
Scenario and general settings | These include parameters for the number of Vusers to run, ramp up time, duration, and logging. |
waitForRunTimeout |
Define the number of seconds for OpenText Performance Engineering for Developers to wait while checking the status of the test run. After the time elapses, the program exits, but the test continues to run on OpenText Core Performance Engineering. The default is 10 seconds. You can use -1 to wait continuously until the run is complete. You can later check status again. For details, see Get test run results. |
Script exclude | This is a list of regular expressions, defining files to exclude from the script when it is uploaded to OpenText Core Performance Engineering. |
Define distribution parameters for tests
You can define whether your load tests should be run from cloud locations, or using on-premises load generators (OPLG). For cloud locations, you can also define the percentage of Vusers that you want to distribute to each location. You define this information in the cor_uploader.yml file.
To define cloud location distribution for tests:
-
To obtain a list of the cloud locations available for the test, in your IDE run a command using the following arguments:
Windows: %DEVWEB_PATH%\ScalUP.exe cor info locations <script folder path>
Linux or macOS: $DEVWEB_PATH/ScalUP cor info locations <script folder path>
Alternatively, if you are working with Visual Studio Code, select Run Task > Get distribution list from OpenText Core Performance Engineering.
After running the command, a table of locations is displayed in the terminal window.
- From the list of available locations (marked as Yes in the Available column), identify the locations that you want to use for the test.
- In the cor_uploader.yml file for the script, make sure the loadTest > location parameter is defined as cloud.
-
In the cloud section, define the required locations and the distribution using the following format:
- name: <location name> The name of the location, as provided in the locations table. For example: aws-us-east-1 percent: <percentage of Vusers> An integer defining the percentage of Vusers to run on this location. For example: 40
The sum of the percent values distributed across all locations must equal 100%.
For example:
- When you run the test again, any locations and Vuser distributions defined for the test within OpenText Core Performance Engineering are overwritten by the cor_uploader.yml settings.
To define OPLG machines for tests:
-
To obtain a list of the OPLG machines available for the test, in your IDE run a command using the following arguments:
Windows: %DEVWEB_PATH%\ScalUP.exe cor info loadGenerators <script folder path>
Linux or macOS: $DEVWEB_PATH/ScalUP cor info loadGenerators <script folder path>
Alternatively, if you are working with Visual Studio Code, select Run Task > Get load generators list from OpenText Core Performance Engineering.
After running the command, a table of OPLG machines is displayed in the terminal window:
- From the list of connected or running machines, identify the ones that you want to use for the test.
- In the cor_uploader.yml file for the script, make sure the loadTest > location parameter is defined as onPremise.
-
In the onPremise section, define the required machines (each machine name in single quotes, and separated by commas).
For example:
Note:
-
The Vuser distribution is according to an internal algorithm in OpenText Core Performance Engineering, so not every machine is necessarily used.
-
If a machine is allocated to another test at runtime, then it is not used for your test.
-
- When you run the test again, any OPLG machines defined for the test within OpenText Core Performance Engineering are overwritten by the cor_uploader.yml settings.
Scale tests FAQ
Review the frequently asked questions before running your load test.
Is a load test run from the integration the same as a test run from the OpenText Core Performance Engineering UI?
Yes—when a load test is executed for the integration using the ScalUP tool, it is run like any other OpenText Core Performance Engineering test.
How is my load test created in OpenText Core Performance Engineering the first time I run the test?
When you execute your test, the script is uploaded and creates a load test using the label Autogenerated_<scriptname>.
What happens if I make changes to the test in OpenText Core Performance Engineering?
You can make configuration changes to the test in the OpenText Core Performance Engineering UI. When you execute the test again from OpenText Performance Engineering for Developers, some of your configuration items might be overwritten.
How can I change the script schedule settings?
You can change schedule settings, for example, for number of Vusers or duration, in the scenario section of the cor_uploader.yml configuration file. When you execute the load test, these settings overwrite the settings in the OpenText Core Performance Engineering UI.
How can I add additional assets to my load test?
Whenever you execute a test from OpenText Performance Engineering for Developers, only the uploaded script asset is used for the test. You cannot run multiple assets.
How can I change distribution for my load test?
You can configure distribution across locations for your test in the cor_uploader.yml file. For details, see Define distribution parameters for tests.
How can I define monitors for my load test?
You can set up monitors for the test in the OpenText Core Performance Engineering UI. When you execute the test again from OpenText Performance Engineering for Developers, it uses the latest configuration in OpenText Core Performance Engineering.
How can I change general settings for my load test?
You can change some general settings using the OpenText Core Performance Engineering UI. Note that the email report address is overwritten whenever the test is executed from OpenText Performance Engineering for Developers.
How can I edit the SLA setting for my load test?
When you execute the test from OpenText Performance Engineering for Developers, the SLA for the test transactions in OpenText Core Performance Engineering is disabled. You can enable it again if you run the test from the UI.
See also: