Powered By GitBook
TestProject Agent CLI
TestProject Agent CLI (Command-Line Interface)

TestProject Agent CLI

TestProject Agent CLI is a cross operating system command line interface utility. It is made for execution of test packages generated using the TestProject platform.
Exported test packages are stand alone textual YAML files. These file can be stores outside of the TestProject cloud, including in an on-premises version control such as git.

Test Packages

A package can be either a single YAML file that contains a test, and its auxiliary (nested and recovery) tests, or an archive (ZIP) that is called a bundle and will contain additional files besides the test itself.
A single YAML file doesn't contain any dependencies like apps, coded tests, or addons that are used in the test. The assumption is that they were already downloaded by the executing Agent or will be downloaded on demand from the TestProject cloud over the internet by the executing Agent before an execution.
A package bundle, on the contrary to a single file, will contain all the dependencies (apps, coded tests or addons) and additional files such as settings and parameters for overriding default values and data-driven execution.

Package Bundle Structure

The following files tree demonstrates a package bundle structure:
1
package.zip
2
├── addons
3
│ ├── {addon-guid}
4
│ ├── {addon-guid}
5
│ ├── {addon-guid}
6
├── apps
7
│ ├── {app-guid}.{ipa/apk}
8
│ ├── {app-guid}.{ipa/apk}
9
│ ├── {app-guid}.{ipa/apk}
10
├── coded-tests
11
│ ├── {test-guid}.{jar/dll/zip}
12
│ ├── {test-guid}.{jar/dll/zip}
13
│ ├── {test-guid}.{jar/dll/zip}
14
├── package.{yaml}
15
├── project-parameters.{yaml}
16
├── settings.{yaml}
17
└── test-parameters.csv
Copied!

Running the CLI

TestProject Agent CLI allows interaction with the Agent and specifically execution of packages.
CLI can be started from the Agent installation folder or from any other location by executing the following command from the shell:
1
[email protected]:~$ testproject-agent
Copied!
Or via command prompt / PowerShell in Windows:
1
testproject-agent.exe
Copied!
When started without parameters or with the help parameter, CLI will display self-explanatory usage instructions, e.g.
1
[email protected]:~$ testproject-agent help
Copied!
Will print:
1
Usage: testproject-agent [-hv] [-A=<agent>] [-C=<grpcTimeout>] [COMMAND]
2
-A, --agent=<agent> Target Agent (host:port)
3
-C, --connect-timeout=<grpcTimeout>
4
5
-h, --help Print usage information.
6
-v, --version Print version information and exit
7
Commands:
8
start Starts the Agent
9
connect Connects to an Agent and prints its version
10
register Registers an Agent using provided API or Development token
11
browsers List available browsers
12
devices List and query available devices
13
validate Inspects and validates an execution package file(s)
14
run Runs an execution package file(s)
Copied!
Running it with the -v or --version option will print the TestProject Agent CLI version, e.g.
1
[email protected]:~$ testproject-agent -v
Copied!
Will print:
1
3.0.0-RELEASE
Copied!

Commands

TestProject Agent CLI allows invocation of various features using a command parameter. The following sections describe all the supported commands.

Start

This command allows starting a local Agent. Before CLI attempts to start the Agent, it verifies that no other Agent process is running.
1
[email protected]:~$ testproject-agent start
Copied!
The command above with no options specified will start the Agent from within the CLI. CLI process will keep running until the Agent quits or is shut down.
Here's the command help:
1
Usage: testproject-agent start [-fhjsV] [-A=<agent>] [-C=<grpcTimeout>]
2
[-D=<dataPath>] [--grpc-address=<grpcAddress>]
3
[--max-workers=<maxWorkers>]
4
[--rest-address=<restAddress>]
5
Starts the Agent
6
-A, --agent=<agent> Target Agent (host:port)
7
-C, --connect-timeout=<grpcTimeout>
8
Connection timeout in seconds
9
-D, --data-path=<dataPath>
10
Path to Agent's data folder
11
-f, --fork Fork current process and exit after Agent is started
12
--grpc-address=<grpcAddress>
13
Agent's spawned gRPC server address (host:port)
14
-h, --help Show this help message and exit.
15
-j, --json Change default output format to JSON
16
--max-workers=<maxWorkers>
17
Agent's maximum amount of workers.
18
--rest-address=<restAddress>
19
Agent's REST API address (host:port)
20
-s, --headless Run Agent headless (do not show system tray icon)
21
-V, --version Print version information and exit.
Copied!
Fork
Using the -f or --fork option CLI process can be forked when the Agent process is started. In this mode, no STD will be attached and CLI will not wait for the Agent to exit. This might be useful in CI / CD pipelines and various configurations.
External Connectivity
By default, Agent starts its gRPC and Web servers, binding them to localhost. Starting from Agent version 2.2.0, to allow external connectivity for the CLI or the SDK incoming requests, additional parameters should be used:
    Using --grpc-address, Agent can be instructed for binding its gRPC to other host and port.
    Using --rest-address, Agent can be instructed for binding its Web Server to other hosts and port.
1
[email protected]:~$ testproject-agent start --grpc-address 10.0.0.2:65000 --rest-address 0.0.0.0:65001
Copied!
Command above will start the Agent, instructing it for binding its:
    gRPC server to a specific IP 10.0.0.2 and port 65000
    Web server to all the available interfaces on the machine it's running on, and port 65001
This way, CLI can communicate with the started Agent via 10.0.0.2:65000, and SDK can communicate with the Agent using any of the available hosts and port 65001.
Max Workers
Using the --max-workers option, it is possible to set the maximum amount of workers for an Agent. Workers amount is the number of tasks an Agent can perform in parallel.
A task can be a test/job execution, a recording session, or an OpenSDK development session. Make sure this is a reasonable value. Too many concurrent executions can impact automation performance due to CPU and Memory starvation. Typically this value should not exceed 50% of the available CPU cores and 2GB of RAM per worker.
For example, if the host has 8 CPU cores, it is recommended to not exceed 4 Agent workers.

Connect

This command connects to an Agent and prints its version:
1
[email protected]:~$ testproject-agent connect
Copied!
Will print:
1
Agent Version: [1.0]
Copied!
If there is no Agent running, a relevant error message will appear.

Register

This command allows registering an Agent when it is not registered.
Agent must be running before a registration attempt. It can be started using the start command if necessary.
Here's the command usage help:
1
[email protected]:~$ testproject-agent register --help
2
3
Usage: testproject-agent register [-hV] -a=<alias> [-A=<agent>]
4
[-C=<grpcTimeout>] -t=<token>
5
Registers an Agent using provided API or Development token
6
-a, --alias=<alias> Alias to use when naming the Agent
7
-A, --agent=<agent> Target Agent (host:port)
8
-C, --connect-timeout=<grpcTimeout>
9
Connection timeout in seconds
10
-h, --help Show this help message and exit.
11
-t, --token=<token> Token to use for registration
12
-V, --version Print version information and exit.
Copied!
Notice the -a or --alias and the -t or --token required options that should be used to invoke the command properly. For example right after installation, you can run the following command to register the Agent as MyAgent:
1
[email protected]:~$ testproject-agent register -a MyAgent -t ***
Copied!
Token
The token used in the command above (masked as triple asterisks) is actually an API or a Development token. Any of them can be obtained from the Integrations page on the TestProject platform.
If the Agent is already registered, a relevant error message will appear.

Browsers

This command queries the Agent and provides a list of browsers that are installed on the machine where Agent is running. It can be used to efficiently configure the execution settings with a list of available browsers for Web test execution.
1
[email protected]:~$ testproject-agent browsers
Copied!
Running the command shown above will result in an output similar to the below:
1
+=========+===============+
2
| type | version |
3
|=========|===============|
4
| EDGE | 88.0.705.81 |
5
| CHROME | 88.0.4324.192 |
6
| SAFARI | 14.0.3 |
7
| FIREFOX | 85.0 |
8
+=========+===============+
Copied!
It can be formatted as JSON if an additional option --json is set:
1
[email protected]:~$ testproject-agent browsers --json
Copied!
Will result in:
1
{
2
"browsers": [{
3
"type": "EDGE",
4
"version": "88.0.705.81"
5
}, {
6
"type": "CHROME",
7
"version": "88.0.4324.192"
8
}, {
9
"type": "SAFARI",
10
"version": "14.0.3"
11
}, {
12
"type": "FIREFOX",
13
"version": "85.0"
14
}]
15
}
Copied!
Information about available browsers can be used to configure execution settings.
Chrome and Firefox have a headless operation mode. When configuring execution settings, use CHROME_HEADLESS and FIREFOX_HEADLESS when required.

Devices

This command allows listing connected devices (also Android emulators or iOS simulators) to an Agent. It also allows listing Apps installed on a device.
Here's a usage help printout:
1
[email protected]:~$ testproject-agent devices list --help
2
3
Usage: testproject-agent devices list [-hjV] [-A=<agent>] [-C=<grpcTimeout>]
4
[--android | --ios] [--physical |
5
--virtual]
6
List available devices
7
-A, --agent=<agent> Target Agent (host:port)
8
-C, --connect-timeout=<grpcTimeout>
9
Connection timeout in seconds
10
-h, --help Show this help message and exit.
11
-j, --json Change default output format to JSON
12
-V, --version Print version information and exit.
13
Mobile Platform
14
--android List only Android devices
15
--ios List only iOS devices
16
Device Type
17
--physical List only physical devices
18
--virtual List only virtual (emulator or simulator) devices
Copied!
List
When the list parameter specified, CLI will list devices:
1
[email protected]:~$ testproject-agent devices list
Copied!
Will result in a similar output to the following:
1
+======+==========+==========+=======================================+=======================================+=========+
2
| udid | platform | type | name | model | version |
3
|======|==========|==========|=======================================|=======================================|=========|
4
| *** | IOS | PHYSICAL | iPad | MP2G2 | 14.4 |
5
| *** | IOS | VIRTUAL | iPad Pro (11-inch) | iPad Pro (11-inch) | 12.4 |
6
| *** | IOS | VIRTUAL | iPhone SE | iPhone SE | 12.4 |
7
| *** | IOS | VIRTUAL | iPhone 5s | iPhone 5s | 12.4 |
8
| *** | IOS | VIRTUAL | iPhone 6 | iPhone 6 | 12.4 |
9
| *** | IOS | VIRTUAL | iPhone 6 Plus | iPhone 6 Plus | 12.4 |
10
| *** | IOS | VIRTUAL | iPhone 6s | iPhone 6s | 12.4 |
11
| *** | IOS | VIRTUAL | iPhone 6s Plus | iPhone 6s Plus | 12.4 |
12
| *** | IOS | VIRTUAL | iPhone 7 | iPhone 7 | 12.4 |
13
| *** | IOS | VIRTUAL | iPhone 7 Plus | iPhone 7 Plus | 12.4 |
14
| *** | IOS | VIRTUAL | iPhone 8 | iPhone 8 | 12.4 |
15
| *** | IOS | VIRTUAL | iPhone 8 Plus | iPhone 8 Plus | 12.4 |
16
| *** | IOS | VIRTUAL | iPhone X | iPhone X | 12.4 |
17
| *** | IOS | VIRTUAL | iPhone Xs | iPhone Xs | 12.4 |
18
| *** | IOS | VIRTUAL | iPhone Xs Max | iPhone Xs Max | 12.4 |
19
| *** | IOS | VIRTUAL | iPhone Xʀ | iPhone Xʀ | 12.4 |
20
| *** | IOS | VIRTUAL | iPad (5th generation) | iPad (5th generation) | 12.4 |
21
| *** | IOS | VIRTUAL | iPad (6th generation) | iPad (6th generation) | 12.4 |
22
| *** | IOS | VIRTUAL | iPad Air | iPad Air | 12.4 |
23
| *** | IOS | VIRTUAL | iPad Air (3rd generation) | iPad Air (3rd generation) | 12.4 |
24
| *** | IOS | VIRTUAL | iPad Air 2 | iPad Air 2 | 12.4 |
25
| *** | IOS | VIRTUAL | iPad Pro (10.5-inch) | iPad Pro (10.5-inch) | 12.4 |
26
| *** | IOS | VIRTUAL | iPad Pro (12.9-inch) | iPad Pro (12.9-inch) | 12.4 |
27
| *** | IOS | VIRTUAL | iPad Pro (12.9-inch) (2nd generation) | iPad Pro (12.9-inch) (2nd generation) | 12.4 |
28
| *** | IOS | VIRTUAL | iPad Pro (12.9-inch) (3rd generation) | iPad Pro (12.9-inch) (3rd generation) | 12.4 |
29
| *** | IOS | VIRTUAL | iPad Pro (9.7-inch) | iPad Pro (9.7-inch) | 12.4 |
30
| *** | ANDROID | PHYSICAL | google-pixel_4a-0A301JEC217496 | Pixel 4a | 30 |
31
| *** | ANDROID | VIRTUAL | emulator-5554 | Android SDK built for x86_64 | 29 |
32
+======+==========+==========+=======================================+=======================================+=========+
Copied!
There are additional options available to narrow down the list:
    Using the --android or --ios options, list can be filtered by a mobile platform.
    Using the --physical or --virtual options, either physical or virtual devices only can be requested.
Another useful option is the --json, that will output results as JSON, for example:
1
[email protected]:~$ testproject-agent devices list --physical --json
Copied!
Will result in a similar output:
1
{
2
"devices": [{
3
"udid": "***",
4
"platform": "IOS",
5
"type": "PHYSICAL",
6
"name": "iPad",
7
"model": "MP2G2",
8
"version": "14.4"
9
}, {
10
"udid": "***",
11
"platform": "ANDROID",
12
"type": "PHYSICAL",
13
"name": "google-pixel_4a",
14
"model": "Pixel 4a",
15
"version": "30"
16
}]
17
}
Copied!
Apps
When the apps parameter specified, CLI will list apps installed on a device. It requires an additional argument -d or --device to be specified, for example:
1
[email protected]:~$ testproject-agent devices apps -d ***
Copied!
Assuming the triple asterisks above are an actual UDID of a device, this command will print a list of apps installed on a device with this UDID, for example here's a printout of apps on an Android device:
1
+============+=========================================+===============================================================+
2
| name | packageName | activityName |
3
|============|=========================================|===============================================================|
4
| Calculator | com.google.android.calculator | com.android.calculator2.Calculator |
5
| Calendar | com.google.android.calendar | com.android.calendar.AllInOneActivity |
6
| Camera | com.google.android.GoogleCamera | com.android.camera.CameraLauncher |
7
| Chrome | com.android.chrome | com.google.android.apps.chrome.Main |
8
| Clock | com.google.android.deskclock | com.android.deskclock.DeskClock |
9
| Contacts | com.google.android.contacts | com.android.contacts.activities.PeopleActivity |
10
| Drive | com.google.android.apps.docs | com.google.android.apps.docs.app.NewMainProxyActivity |
11
| YouTube | com.google.android.youtube | com.google.android.youtube.app.honeycomb.Shell$HomeActivity |
12
+============+=========================================+===============================================================+
Copied!
Or something similar for an iOS device:
1
+===========+===================+=======================================+
2
| name | version | bundleId |
3
|===========|===================|=======================================|
4
| App Store | 1 | com.apple.AppStore |
5
| Books | 4698 | com.apple.iBooks |
6
| Calendar | 1.0 | com.apple.mobilecal |
7
| Camera | 3732.0.210 | com.apple.camera |
8
| FaceTime | 36 | com.apple.facetime |
9
| Family | 1 | com.apple.family |
10
| Feedback | 454 | com.apple.appleseed.FeedbackAssistant |
11
| Files | 200.4.1 | com.apple.DocumentsApp |
12
| Mail | 3654.60.0.1.23 | com.apple.MailCompositionService |
13
| Maps | 2608.33.11.29.4 | com.apple.Maps |
14
| YouTube | 16.05.9 | com.google.ios.youtube |
15
+===========+===================+=======================================+
Copied!
Using the --json option same output will be presented as a JSON:
1
[email protected]:~$ testproject-agent devices apps -d *** --json
Copied!

Validate

This command inspects the contents of a backup package or bundle, validates it, and prints basic details about it:
1
[email protected]:~$ testproject-agent validate backup.yaml
Copied!
Running the command shown above will print similar details:
1
Package Protocol: 1
2
Project
3
+========================+==================+
4
| ID | Project Name |
5
|========================|==================|
6
| *** | My First Project |
7
+========================+==================+
8
9
Tests
10
+========================+==================+
11
| ID | Test Name |
12
|========================|==================|
13
| *** | My First Test |
14
+========================+==================+
Copied!
Protocol version indicates what is the TestProject Agent CLI compatible version for this backup file.
Same data can be presented as a JSON if the --json the option is used:
1
[email protected]:~$ testproject-agent validate backup.yaml --json
Copied!
Will output similar details:
1
{
2
"protocol": 1,
3
"project": {
4
"***": "My First Project"
5
},
6
"tests": {
7
"***": "My First Test"
8
}
9
}
Copied!

Run

This command should be used to execute a backup package. Here are the usage instructions following the execution of the command with the --help option:
1
[email protected]:~$ testproject-agent run --help
2
3
Usage: testproject-agent run [-hV] [--parallel-targets] [--parallel-tests]
4
[--plain] [-rd] [-a=<alias>] [-A=<agent>]
5
[-C=<grpcTimeout>] [-D=<dataPath>]
6
[--grpc-address=<grpcAddress>] [-o=<outputPath>]
7
[-p=<parametersFile>] [-r=<report>]
8
[--rest-address=<restAddress>] [-s=<settingsFile>]
9
[-t=<token>] [-d=<servers>]...
10
[--browser=<browsers> [--browser=<browsers>]... |
11
--device=<devices> [--device=<devices>]...]
12
<files>...
13
Runs an execution package file(s)
14
<files>... Path to execution package file(s)
15
-a, --alias=<alias> Alias to use when naming the Agent
16
-A, --agent=<agent> Target Agent (host:port)
17
-C, --connect-timeout=<grpcTimeout>
18
Connection timeout in seconds
19
-d, --driver-server=<servers>
20
Driver server - local within the Agent (default)
21
or cloud.
22
-D, --data-path=<dataPath> Path to Agent's data folder
23
--grpc-address=<grpcAddress>
24
Agent's spawned gRPC server address (host:port)
25
-h, --help Show this help message and exit.
26
-o, --output-path=<outputPath>
27
Output folder path for the local report file(s)
28
-p, --parameters=<parametersFile>
29
Parameters file (data-source CSV/YAML)
30
--parallel-targets Execute package(s) in parallel on all configured
31
browsers/devices
32
--parallel-tests Execute all tests in package(s) in parallel on all
33
configured browsers/devices
34
--plain Produce plain output (without progress bars).
35
-r, --report=<report> Report type - local, cloud or both (default)
36
-rd, --restart-driver Restart driver before each test
37
--rest-address=<restAddress>
38
Agent's REST API address (host:port)
39
-s, --settings=<settingsFile>
40
Execution settings file (targets, etc.)
41
-t, --token=<token> Token to use for registration
42
-V, --version Print version information and exit.
43
Targets
44
--browser=<browsers> Target browsers (multi-value)
45
--device=<devices> Target devices (multi-value)
Copied!
As stated earlier a package can be either a single YAML file, or an archive (ZIP).
Settings
A bundle (ZIP) is a self-sufficient archive that contains a settings file with a pre-selected list of browsers or devices for execution. While a stand-alone YAML file requires to specify these settings.
In order to override execution settings included in a bundle or to specify execution settings for a stand-alone YAML file, the following options are available:
    -s or --settings should be used to provide an external setting file.
    --browser or --device to provide a list of target browsers or devices as command arguments.
The following example demonstrates the execution of a bundle:
1
[email protected]:~$ testproject-agent run MyFirstTestBackup.zip
Copied!
And this is an example of an unbundled stand-alone YAML:
1
[email protected]:~$ testproject-agent run MyFirstTestBackup.yaml
Copied!
Since no setting are bundled, and none are provided, default target will be used. Chrome or any other installed browser for Web test and any connected device for Mobile.
To override bundled settings using a file, the following command can be executed with -s or --settings option:
1
[email protected]:~$ testproject-agent run MyFirstTestBackup.zip --settings settings.yaml
Copied!
The command above will use settings configured in settings.yaml instead of the settings inside the archive. The same could be achieved using the --browser option:
1
[email protected]:~$ testproject-agent run MyFirstTestBackup.zip --browser CHROME --browser FIREFOX
Copied!
The command above will override bundled settings and use provided list of browsers. In case of a mobile test, device(s) UDID(s) should be provided using --device option:
1
[email protected]:~$ testproject-agent run MyFirstTestBackup.zip --device *** --device ***
Copied!
Command arguments can also be used to provide settings for unbundled files such as stand-alone YAML:
1
[email protected]:~$ testproject-agent run MyFirstTestBackup.yaml --browser SAFARI --browser EDGE
Copied!
Parameters
Similar to settings, test parameters can be overridden or provided externally.
In order to override bundled test parameters using an external file, -p or --parameters option should be used:
1
[email protected]:~$ testproject-agent run MyFirstTestBackup.zip --parameters parameters.csv
Copied!
The same syntax should be used to supply parameters values for an unbundled stand-alone YAML backup files:
1
[email protected]:~$ testproject-agent run MyFirstTestBackup.yaml --parameters parameters.csv
Copied!
Report
Following an execution, a local report generated. By default, it will be created under Agent's data folder, inside reports folder.
Running the following command:
1
[email protected]:~$ testproject-agent run MyFirstTestBackup.zip
Copied!
Will produce a similar output:
1
Executing target 1/1: [Chrome (Headless) 88.0.4324.192]
2
Tests 100% │██████████████████████████████████████████│ 1/1 (0:00:00 / 0:00:00)
3
Steps 100% │██████████████████████████████████████████│ 1/1 (0:00:00 / 0:00:00)
4
Execution Report Path: /Users/testproject/Desktop/{TIMESTAMP}.html
5
Execution Report URL: http://localhost:8585/api/report/{TIMESTAMP}.html
6
Execution is complete.
Copied!
Notice the Execution Report Path and Execution Report URL log lines. URL provided might be useful in combination with the -A or --agent parameter that is used to specify a remote Agent. Using this URL, a report that is generated by the remote Agent can be retrieved from the remote machine.
Custom Report Location
To specify a different location for the report file, -o or --output-path parameter can be used:
1
[email protected]:~$ testproject-agent run MyFirstTestBackup.zip -o ~/Desktop
Copied!
the command above will run MyFirstTestBackup.zip bundle and generate a report in ~/Desktop, for example:
1
Executing target 1/1: [Chrome (Headless) 88.0.4324.192]
2
Tests 100% │██████████████████████████████████████████│ 1/1 (0:00:00 / 0:00:00)
3
Steps 100% │██████████████████████████████████████████│ 1/1 (0:00:00 / 0:00:00)
4
Execution Report Path: /Users/testproject/Desktop/{TIMESTAMP}.html
5
Execution is complete.
Copied!
Specifying a custom report file location will result in no report URL link appearing in logs.
In the example above, the report file created in /Users/testproject/Desktop/MyFirstTest-{TIMESTAMP}.html
Progress
Execution progress is represented using progress bars by default. For consoles that do not support progress bars representation, please use --plain option to output plain text progress.
Progress does not indicate steps results such as passed or failed, but only a periodic indication of the execution advancement. Therefore, when using the --plain option, the same step might appear more than once or do not appear at all if execution advances too quickly.
It is also possible that when using progress bars, it will not reach 100% if the test fails on one of the steps before reaching the end. To inspect the actual execution results, refer to the report file generated a the end of the execution.
Parallel Execution Settings
Using the --parallel-targets or --parallel-tests options, package execution can be parallelized. By default the execution is serial, meaning that tests will be executed one by one on each defined browser/device.
Enabling --parallel-targets will result in tests being executed one by one on all defined browsers/devices, in parallel.
Enabling --parallel-tests will result in all tests being executed on all defined browsers simultaneously. If a test has a data source, all data iterations will run at the same time as well.
These options override any similar settings set via the package's bundle settings YAML file.

Global Options

Starting from Agent version 2.2.0, there are several global options that can be used with all the commands that interact with an Agent. For example, connect, devices, browsers, etc.
Remote Agent
By default, CLI uses the local Agent, running on the same machine where the CLI is running. Using the -A or --agent option, allows targeting a remote Agent, in the same network, on a different machine:
1
[email protected]:~$ testproject-agent --agent 10.0.0.2:9999 browsers list
Copied!
For example, command above will list available browsers on the Agent at 10.0.0.2:9999. The accepted format for the target Agent address is {HOST}:{PORT}.
Running packages on a remote Agent, is currently not supported.
Connection Timeout
Sometimes, it might be necessary to allow an extended timeout connecting to the Agent. This can be done using the -C or --connect-timeout option, specified in seconds, as shown below:
1
[email protected]:~$ testproject-agent --connect-timeout 10 run MyFirstTestBackup.zip
Copied!
The default value is 10 seconds, and using this option can be changed.

CLI Versions & Backwards Compatibility

CLI versions are not backward compatible with previous Agents. Therefore CLI version 2.x should be used with Agents 2.x and CLI 3.x should be used with Agents 3.x

Summary

TestProject CLI is a powerful tool allowing the execution of backup packages. It can be used on-premises and integrated into any CI / CD pipelines.
TestProject CLI is available as part of the TestProject Agent v2.0.0 installation.
Last modified 3mo ago