The focus of this guide is how to integrate Akamas with Tricentis NeoLoad in order to leverage Neoload as a performance testing tool in an Akamas optimization.
To be able to execute a test from Neoload and to collect the Neoload metrics you will need:
- Neoload 7.0+
- a valid Neoload license;
- a working Neoload test script;
- a fully working Neoload farm composed by:
- NeoLoadWeb (saas or on-prem);
- a Neoload "zone" composed of 1 controller and (at least) 1 loadgenerator;
- URL (and port if it is not the default one) of the NeoLoadWeb server;
- to whitelist the connections between:
- Akamas server and NeoLoadWeb server over port 8080 and 8081 (if NeoLoadWeb is deployed on-premises);
- Akamas server and internet if NeoLoadWeb is managed as a SaaS platform
- A NeoLoadWeb user with a "tester" role ("guest" role cannot be used due to limitations in triggering test execution). For compatibility reasons, the user related to the generated token must belong to the default workspace.
- A NeoLoadWeb API token created with the above user to inherit the same rights
At the component level, the NeoLoad integration is trivial and only requires specifying a single NeoLoad property at the Web Application component. These properties will be used during the telemetry phase to map the NeoLoad metrics (e.g. transactions response time, error rate, etc..) to the right Akamas component.
The example below provides an example of a component definition with the appropriate NeoLoadWeb property:
description: konakart service layer component
componentType: Web Application
At the telemetry level, the NeoLoad integration relies on the NeoLoadWeb telemetry provider.
In case the NeoLoadWeb telemetry provider is not already installed on the Akamas server, please follow the instructions on the Setup NeoLoad telemetry provider page. After installing the telemetry provider, a NeoLoadWeb telemetry instance can be implemented following the instructions on Create NeoLoadWeb telemetry instance page.
The following is an example of a NeoLoad telemetry instance:
# NeoLoad Web Telemetry Provider Instance
The workflow configuration changes depending on your NeoLoadWeb deployment, since it could be Saas or on-premises.
For compatibility reasons, the user related to the generated token must belong to the default workspace.
Some properties can be retrieved from the NeoLoad application or NeoLoadWeb.
Notice: for compatibility reasons, the user related to the generated token must belong to the default workspace.
You need to have a controller and at least one load generator in place in the zone you have configured in the workflow step
Assuming that the NeoLoad scripts are hosted on your instance (thus you didn’t upload them on NeoLoad Web) the following command will run the load test scripts deployed in folder neoload-project on your NeoLoad farm:
docker run --rm \
-e NEOLOADWEB_TOKEN=xxxxxxxx \
-e CONTROLLER_ZONE_ID=iM7QB \
-e LG_ZONE_IDS=iM7QB:1 \
-e TEST_RESULT_NAME=myTestResult \
-e SCENARIO_NAME=10VU_5min \
neoload-projectis the name of the mount point that the container is expecting. Please do not change it. Docker will mount your project folder in an internal folder named
The project folder can contain:
- A NeoLoad project folder including .nlp, config.zip ...
- A single zip file containing the NeoLoad project
- A single YAML file containing the NeoLoad project as code
Problem Test file upload on NeoloadWeb fails with the following error:
Error code: 400
io.swagger.client.ApiException: Bad Request
Solution The user related to the token you are using must belong to the