Checking the Maximum Simultaneous Execution Licenses

Last edited on

Overview

The purpose of the script ("test.py") offered in this article, is to check the upper limit of simultaneous Squish execution licenses that it can acquire.

How it Works

This script simultaneously launches n instances of squishrunner, and checks (for up to 40 seconds) how many of these squishrunners can acquire a license.

Note:

Usage

Step 1 - Download this test.py file:

test.py

Step 2 - In a shell, terminal or command prompt execute the following:

This will check if a maximum of 10 simultaneous execution licenses can be acquired by the squishrunners launched by this script:

Unix:

cd "squish_dir"

./python3/bin/python "path/to/test.py" 10

Windows:

cd "squish_dir"

python3/python "path/to/test.py" 10

(Replace "squish_dir" and "path/to/test.py" accordingly.)

Example Execution and Output

Command (in cmd.exe or so):

cd "C:\Users\myuser\squish-7.1.1-qt65x-win64-msvc142"

python3\python "C:\Users\myuser\test.py" 20

Output:

2023-07-18-17:11:50 Acquired licenses after 1 second(s): 10
2023-07-18-17:11:51 Acquired licenses after 2 second(s): 10
[...]
2023-07-18-17:12:29 Acquired licenses after 39 second(s): 10
2023-07-18-17:12:30 Acquired licenses after 40 second(s): 10

In this example, only a maximum of 10 simultaneous execution licenses could be obtained.

In this case, this is because the license set in use only has a total number of 10 (execution and tester combined) licenses. This is reflected in the license server log, too:

[...]
License usage: tester=4/4 executor=6/6 variable=0 total=10/10
[...]

Another reason for a number lower than expected, can be that other clients are also currently using licenses from this license server/set. To check this, one needs to check the license server's log, which is explained at License Server Logging in the Squish manual.