This manual provides an explanation of how Tests and Execution Flows can be executed either from a Script within the quilliup UI or via external tools.
Abbreviations, used in manual:
EF - Execution Flow
AD - Active directory
run_qp commands (run_qp.exe for Windows & run_qp.sh for Linux) allow implementing quilliup entities (for example: EFs, Tests, ...) remotely (for example: from CMD, UC4, Control-M, ...).
Note: ensure that the computer where you intend to run run_qp.exe file has relevant .NET version installed.
run_qp command could be also implemented from quilliup UI, using "Command line" Script or "run_qp command". quilliup Script returns statuses 0 or 1.
For example:
1. When Script succeeds, returns a "Success" status:
2. When Script Fails ( Test’s/EF’s final result doesn’t matter ), Script returns a "Failure" status:
scriptType.change.runQp parameter - if in quilliup configuration file "config.properties" parameter's the value is "true", then on quilliup start up all the Scripts of type "Command line" that contain run_qp command in each Step, will automatically be changed to type "run_qp command".
Get the user's authorization key (not relevant when quilliup is in AD mode):
The authorization key is a String representation of encrypted combination of Username and Password value and can be retrieved from quilliup UI as follow: in the upper right corner click User's icon and choose "Authentication":
Fill in the currently logged-in User's password and click on the "Run" button. In the "Authentication Key" field relevant authentication key value will be shown:
*save the authentication key, it will be one of the arguments for the command line execution.
Encrypted password for the run_qp commands:
An encrypted password is a security measure used to protect sensitive information. Encryption transforms data into a format that is not easily readable by unauthorized users, thereby enhancing security and preventing unauthorized access.
Steps:
1. On quilliup installation server go to “..\quilliup\webapps\ROOT\utils" double click quilliup_Encrypt_AES.jar".
2. In the opened window, enter the password into the "Password" field, then click the "Encrypt" button:
3. Use the encrypted password value from the "Result" filed in the run_qp commands, for example:
run_qp.exe -u "https://localhost:8443" --username "devdomain\moran" --password "V%+IgoQ23xgecv8xIETSjJ2Q==%B" -ad -t "815" -d
4. Please be advised that when utilizing encrypted passwords for the "run_qp.sh" file, the "decryptForRunQpSh.jar" file must be present in the same directory as "run_qp.sh".
run_qp command options:
Arguments:
-a or --authorization User authorization
-u or --url Hostname and port eg. https://<hostname>:<port>
-ad Active Directory mode
--username Username for AD - LDAP. This parameter is available only for Windows (run_qp.exe).
--password Password for AD - LDAP. This parameter is available only for Windows (run_qp.exe).
-krb Kerberos mode. This parameter is available only for Linux (run_qp.sh).
Single run options:
-t or --test Test rId to run
-f or --flow EF rId to run
Multiple run options:
-serial Run objects one by one
-p or --project Project name that stores all the objects that you want to run.
-tag Tag name
-limit Limit operation to a single type, e.g -limit "-t" - will run only Tests.
-allTags Run all objects that are related to the Tags specified (in other words, entity must contain all the listed Tags).
Option Configuration:
-h or --help Show the help page (this message) and exit.
-s or --sample Run in test mode
-v or --variable External variable eg. '<name>:<value>'. For each variable use "-v " parameter, for multiple values in the External variable, "<name>:<value>, <value>,<value>\"
-d or --debug Debug mode.
-is Ignore status check mode, which means the command will not wait until the Test will finish to run (always will be immediately returned status 1). This parameter is available only for Windows (run_qp.exe).
Windows
Pre Requirements:
- Net 3.5 Framework (or upper) installed.
- Copy the run_qp.exe file to a certain location in the Windows server. By default, it's located in the quilliup installation folder ("..\quilliup\webapps\ROOT\utils")
Examples:
Help:
run_qp.exe -h
Run Test:
run_qp.exe -u "https://localhost:8443" -a "UUFfdXNlouBRQToxMiM=" -t "815" -v "x:1"
Run Test when quilliup is in AD mode using username & password:
run_qp.exe -u "https://localhost:8443" --username "devdomain\moran" --password "Qw!78901" -ad -t "815" -d
Run Test when quilliup is in AD mode using username & encrypted password:
run_qp.exe -u "https://localhost:8443" --username "devdomain\moran" --password "V%ACZaYK8w7pbcacy1FuAwZg==%B" -ad -t "815" -d
Run Test when quilliup is in AD mode using NTLM authentication:
run_qp.exe -u "https://localhost:8443" -ad -t "815"
Run Test when quilliup is in AD mode using NTLM authentication:
run_qp.exe -u "https://localhost:8443" -ad -a ':' -t "815"
Run EF in debug mode:
run_qp.exe -u "https://localhost:8443" -a "UYFfdXNlckBRQToxMjM=" -f "92" -d
Run multiple Tests in a Project by Tag in parallel:
run_qp.exe -u "https://localhost:8443" -a "UUYFfdXNlckBRQToxMjM=" -limit "t" -p "QVD" -tag "moran" -d
Run multiple Tests in a Project by Tag in serial
run_qp.exe -u "https://localhost:8443" -a "UYFfdXNlckBRQToxMjM=" -limit "t" -p "QVD" -tag "moran" -serial -d
Run multiple objects by Tags
run_qp.exe -u "https://localhost:8443" -a "UYFfdXNlckBRQToxMjM=" -tag "t1" -tag "t2" -alltags -d
OR
run_qp.exe -u "https://localhost:8443" -a "UYFfdXNlckBRQToxMjM=" -tag "t1,t2" -alltags -d
Run multiple objects in serial:
run_qp.exe -u "https://localhost:8443" -a "UYFfdXNlckBRQToxMjM=" -p "QVD" -tag "t1" -tag “t2” -limit "t" -allTags -serial -d
Run Test and ignore status check mode:
run_qp.exe -u 'http://localhost:8080' -a 'UYFfdXNlckBRQToxMjM=' -t '815' -is
Run Test with multiple variables:
run_qp.exe -u "https://localhost:8443" -a "UYFfdXNlckBRQToxMjM=" -t "2974710" -v "table:x" -v "key:y" -v "index:z"
OR
run_qp.exe -u "https://localhost:8443" -a "UYFfdXNlckBRQToxMjM=" -t "2974710" -v "table:x","key:y","index:z"
Note: if you use a Windows SSPI-enabled curl binary and perform Kerberos V5, Negotiate, NTLM, or Digest authentication, then you can configure curl to send the currently logged-on user name and password by specifying a colon with -a option: "-a ':'".
Linux
Pre Requirements:
1. curl installed
2. Execution permissions
3 . Full permissions 777 to run_qp.sh file
4. In case of getting the following error message:
/bin/bash^M: bad interpreter: No such file or directory
implement the following command: sed -i -e 's/\r$//' run_qp.sh
Examples:
Help:
sh ./run_qp.sh -h
Run Test with Variable:
./run_qp.sh -u "https://192.168.50.177:8443" -a "UYFfdXNlckBRQToxMjM=" -t "513" -v "x:1"
Run Test with multiple Variables:
./run_qp.sh -u "https://localhost:8443" -a "UYFfdXNlckBRQToxMjM=" -t "2974710" -v "table:x" -v "key:y" -v "index:z"
Run Test when quilliup is in AD mode using username & password:
./run_qp.sh -u "https://192.168.50.156:8443" -a 'devdomain\moran:Qw!78901' -ad -d -t "502"
Run EF when quilliup is in Active Directory mode using Kerberos:
./run_qp.sh -u "https://192.168.50.177:8443" -a 'devdomain\moran:Qw!78901' -krb -f "66" -d
Run EF in debug mode with Variable:
./run_qp.sh -u "https://192.168.50.177:8443" -a "UYFfdXNlckBRQToxMjM=" -f "69" -v "x:1" -d
Run multiple Tests in several Projects by 2 Tags in parallel:
./run_qp.sh -u "https://192.168.50.177:8443" -a "UYFfdXNlckBRQToxMjM=" -p "project1,project2" -tag "t1,t2" -limit "t"
Run multiple EFs in a specific Project in serial:
./run_qp.sh -u "https://192.168.50.177:8443" -a "UYFfdXNlckBRQToxMjM=" -p "QVD" -tag "moran" -limit "f" -serial
Run multiple Tests in a specific Project in serial:
./run_qp.sh -u "https://192.168.50.177:8443" -a "UYFfdXNlckBRQToxMjM=" -p "QVD" -tag "moran" -serial
Command line execution statuses returned from quilliup:
(-4) Queued
(-3) Calculating
(-2) Pending
(-1) Running
(0) Passed
(1) Failed
(2) Warning
(3) Wrong Query
(4) Bad Configuration
(5) Cancelled by User
(6) System Failure
(7) Disabled Execution
(8) All Objects are Disabled
(9) Cancelled by Shutdown
(10) Cancelled by timeout
(11) Cancelled by internal execution
Command-line error statuses returned from run qp (not from quilliup):
Windows:
(13) Missing parameters
(14) Request to the server failed
Linux:
(13) HTTP Status 401 - Bad credentials
(14) Missing argument: --test / --flow
(15) Missing argument - URL or Authentication
(16) HTTP Status 503 - When the quilliup server is unavailable
(17) Unable to access jar file decryptForRunQpSh.jar
Comments
0 comments
Please sign in to leave a comment.