The Qlik Sense Enterprise Scalability Tools are used to create and run load and performance tests towards Qlik Sense Enterprise for Windows (QSEfW) and Qlik Sense Enterprise on Kubernetes (QSEoK) deployments.
Included parts are:
Documentation on how to use the package
Command line tool for Windows, Mac and Linux. This command line tool (gopherciser) is open source and can be found here .
Optional setting to break execution on exceeded error count level
Support for path in URL for Prometheus push metrics
Prometheus push latest values before shutdown (when using Prometheus push gateway)
New section for adding web hooks pre- or post-execution.
Gopherciser v0.11.2 -> v0.11.5
Add users from file option.
v0.6.1 -> v1.0.0
Regression logging is now available in QSEST.
Configurable columns in scheduler module.
Gopherciser v0.8.0 -> v0.11.2
New action: `setscriptvar`.
New action: `setsensevariable`.
Removed all elastic actions.
Script validation now supports warnings.
Configurable AskHubAdvisor follow up type.
Template variables now support system environment variables.
Your use of Qlik Sense Enterprise Scalability Tools will be subject to the same license agreement between you and Qlik for your Qlik Sense License. Qlik does not provide maintenance and support services for the Qlik Sense Enterprise Scalability Tools, however please check QlikCommunity for additional information on use of these products.
It's an easy fix. You just need to add an OpenHub action before your OpenApp action.
Alternatively, you can use the GUID instead of name to open the app directly.
The reason for this is the tool uses an internal "artifact map" that maps between the name of an app and a guid. When the OpenHub action occurs, the tool "sees" what apps are in the system and remembers them for future access. Then it uses this artifact map to look up the app. I attached a fixed version of your script.
I updated the script to use generate users using a prefix, to scale to 25 users and for 25 iterations.
Created the scenario as below:
When the run the tool in command prompt, I am getting a couple of errors:
1. Sessions exceeded
2. Hub cannot be opened (presumably for hub was already open for the user from the first run) (maybe I am missing something that would allow to do "open hub" only in the first iteration and skip for the rest?
Most common error: [90m11:26AM[0m [1m[31mERR[0m[0m failed to get DocList: EOF [36mAction=[0mopenhub [36mActionId=[0m25 [36mAppGUID=[0m [36mAppName=[0m [36mDetails=[0m [36mErrors=[0m0 [36mInfoType=[0m [36mLabel=[0m [36mObjectType=[0m [36mReceived=[0m0 [36mRequestsSent=[0m0 [36mResponseTime=[0m0 [36mSent=[0m0 [36mSession=[0m5 [36mSessionName=[0m [36mStack=[0m"EOF\nfailed to get DocList\ngithub.com/qlik-trial/gopherciser-oss/scenario.OpenHubSettings.Execute.func2\n\t/go/src/github.com/qlik-trial/gopherciser-oss/scenario/openhub.go:68\ngithub.com/qlik-trial/gopherciser-oss/session.(*PendingHandler).QueueRequest.func1\n\t/go/src/github.com/qlik-trial/gopherciser-oss/session/pendinghandler.go:88\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1357" [36mThread=[0m1 [36mTick=[0m1767086597274 [36mUser=[0mQSEST_5 [36mWarnings=[0m0 [36mtimestamp=[0m2020-03-06T17:26:27.9188073Z
We seem to have a bug that sometimes causes the connection test to succeed even if the header settings are invalid. After double-checking the header name and header value against the QMC settings, the issue was resolved on my end. Would you please double check:
It sounds like you're encountering some issues related to your licenses. I note that you're using a list of 3 users that are invoked multiple times in parallel. Increasing the number of users in your user list to match the number of concurrent users in the script should mitigate your problems.
The maximum number of parallel user connections for a single user of this type of access pass is five (5).If you use a license with a signed license key, accessing the QMC also counts and adds to the maximum number of parallel sessions, which is five. To avoid unnecessary session consumption, the root admin should not be allocated any type of access.
and your test may also be affected by the "cool down" timer for licensed users, which is why it fails after the first time:
When a user with the maximum number of parallel user connections ends a connection (for example, by logging out) five minutes must pass before the user can use the access pass to add another connection (for example, by logging in).