Command Line Options
Tests can be executed by running mvn clean verify
.
This can be followed by any properties, in the form -DpropertyName=value
,
you wish to specify.
See also the “Using Config files…” entry for using config files to provide a subset of these params instead
General
Property | Description | Values | Default |
---|---|---|---|
test |
The test class, or comma separated list of test classes, to run. Can include wildcards. | e.g. MyTest* |
All tests |
threads |
The number of threads to use. | e.g. 3 |
1 |
reuseBrowser |
Will re-use existing browsers rather than starting a new instance for each test. | true or false |
false |
groups |
The TestNG test groups which you wish to run. | e.g. checkintest |
All groups |
build |
The build version or app version to log to Sauce Labs, BrowserStack, or Capture. | e.g. build-1234 |
none |
proxy |
Proxy server to be used from Selenium and REST API requests. | system , autodetect , direct or http://{hostname}:{port} , e.g. http://10.3.2.22:80 |
none |
maxRetryCount |
Additional attempts to retry a failed test. | e.g. 3 |
1 |
Browser Properties/Capabilities
Property | Description | Values | Default |
---|---|---|---|
browser |
The browser on which you wish to run the tests. | firefox , chrome , safari , ie , opera , legacyfirefox ,electron ,custom |
firefox |
maximise |
Maximise browser on opening (if possible). | true or false |
false |
resolution |
Set browser dimensions to specific setting (if possible). | e.g. 1024x543 |
none |
chromeUserDataDir |
Removed in v3.0.0. See customBrowserImpl below for preferred method. |
e.g. path/to/chrome_user_data_dir |
none |
customBrowserImpl |
Allows users to specify classname (fully qualified name in v3.0.0) of their own browser implementation, for example for specifying a custom set of Capabilities . |
e.g. ChromeIncognitoBrowserImpl or since v3.0.0 my.package.ChromeIncognitoBrowserImpl |
none |
headless |
Allows users to run Chrome or Firefox in a headless environment | true or false |
false |
Remote Grids. Devices and Platforms
No defaults.
Property | Description | Values |
---|---|---|
gridURL |
The URL of your Selenium Grid hub. | e.g.http://localhost:4444/wd/hub - NB /wd/hub is required! |
browserStack |
Must be set to true if you wish to run on BrowserStack. |
true or false |
sauce |
Must be set to true if you wish to run on Sauce Labs. | true or false |
browserVersion |
The browser version on which you wish to run the tests. Only used when running remotely e.g. on Selenium Grid, Sauce Labs or BrowserStack. | e.g. 8.0 |
platform |
The platform on which you wish to run the tests. Only used when running remotely. To be specified instead of ‘os’ when running with BrowserStack. | e.g. windows , ios , android , OSX |
platformVersion |
The platform version on which you wish to run the tests. Only used when running remotely. To be specified instead of ‘os_version’ when running with BrowserStack. | e.g. 5.0 |
device |
The device on which you wish to run remote tests. If not using SauceLabs or BrowserStack, can be specified with the -Dbrowser=chrome parameter to instigate a Chrome browser emulator of the specified device. |
iPhone , iPad , iPhone Retina 4-inch , Galaxy S4 , etc. |
applicationName |
Specify applicationName parameter for a grid run. | e.g. windows7_32bits_firefox |
videoCaptureUrl |
Enable video capture using Grid plugins. Usage of video capture is generic as possible. All grid plugins, such as Selenium Grid Extras, capture videos by the WebDriver session ID. | e.g. http://localhost:3000/download_video/%s.mp4 |
appPath |
The path to the apk file to be used in Sauce Labs. It is also used as the app desired capability of the supported WinAppDriver. |
e.g. /home/dev/android/build/newapp_1.2.5.apk for SauceLabs or Microsoft.WindowsAlarms_8wekyb3d8bbwe!App , or C:\Windows\System32\notepad.exe for the WinAppDriver. |
Remote Supported Devices/Platforms
Jira/Zephyr/Test Result Logging Integrations
No defaults.
Property | Description | Values |
---|---|---|
jiraURL |
The base URL of the JIRA instance you want to use | e.g. http://jira:8080 |
jiraUsername |
The JIRA user you want to use | e.g. JBloggs |
jiraPassword |
The JIRA user’s password | e.g. password |
jqlQuery |
the JQL query to look up the JIRA tests to run (the results of the query will be looked up against the @Issue annotations on tests). |
e.g. (priority=1 and component=Admin) or issueKey=JIRA-123 |
jiraResultFieldName |
The Jira field name to attempt to log results to for the specified @Issue . The values to change the field to are specified in the Jira config file. Useful if you’re using a Jira field to mark the test result. |
e.g. Test Result |
jiraResultTransition |
If specified, will attempt to transition the @Issue specified through the transitions specified in the Jira config. Useful if using a customised Jira workflow for managing test results. |
any value |
resultVersion |
The ‘Version’ to mark the test execution against in Zephyr for JIRA (requires ZAPI). | e.g. App v1.1.2 |
zapiCycleRegEx |
If the Zephyr test cycle name contains this string test results will be logged against the matching cycles. | e.g. firefox or my-special-cycle |
Spira Integration
No defaults.
Property | Description | Values |
---|---|---|
spiraURL |
The base URL of the Spira instance you want to use | e.g. http://spira:8080 |
Capture Integration
A Capture server is a custom server developed to allow Frameworkium tests to send screenshots for each step they are executing. All three need to be defined for the integration to work correctly.
No defaults.
Property | Description | Values |
---|---|---|
captureURL |
The base URL of the Capture instance you want to automatically send screenshots and step information to. | e.g. http://capture/ |
sutName |
The name of the system under test (SUT) to be presented in the Capture dashboard. | e.g. My App |
sutVersion |
The release version to appear on the Capture dashboard. | e.g. 1.2.5 |
Examples
Running tests using Firefox:
mvn clean verify
Running web tests using Chrome:
mvn clean verify -Dbrowser=chrome
Running web tests on Firefox 58.0.1 with Selenium Grid:
mvn clean verify -Dbrowser=firefox -DbrowserVersion=58.0.1 -DgridURL=http://localhost:4444/wd/hub
Running test methods which match the patterntestM*
on Firefox with Selenium Grid and Capture:
mvn clean verify -Dtest=TestClass#testM* -Dbrowser=firefox -DgridURL=http://grid:4444/wd/hub -DsutName="My Project" -DsutVersion="0.0.1" -DcaptureURL=http://capture/
Running mobile web tests on Chrome, using its device emulation:
mvn clean verify -Dbrowser=chrome -Ddevice="Apple iPad 3 / 4"
Running mobile web tests on BrowserStack Win XP Firefox 33:
export BROWSER_STACK_USERNAME=<username>
export BROWSER_STACK_ACCESS_KEY=<access_key>
mvn clean verify -DbrowserStack=true -Dbrowser=firefox -DbrowserVersion=57.0 -Dplatform=Windows -DplatformVersion=XP
Running mobile web tests on Sauce Labs iOS 8.0 iPad Simulator:
export SAUCE_USERNAME=<username>
export SAUCE_ACCESS_KEY=<access_key>
mvn clean verify -Dsauce=true -Dplatform=ios -Dbrowser=safari -DplatformVersion=8.0 -Ddevice="iPad Simulator"
Running mobile web tests on BrowserStack iOS iPad Air (real device):
export BROWSER_STACK_USERNAME=<username>
export BROWSER_STACK_ACCESS_KEY=<access_key>
mvn clean verify -DbrowserStack=true -Dbrowser=ios -Ddevice="iPad Air"
NB - platform and platformVersion (os & os_version in BrowserStack config) are not required or supported when running on mobile devices
Running mobile app tests on Sauce Labs Android Emulator:
export SAUCE_USERNAME=<username>
export SAUCE_ACCESS_KEY=<access_key>
mvn clean verify -Dsauce=true -Dplatform=android -DappPath=<path_to_.apk>
Run regression tests (as marked in JIRA with the label REGRESSION) and log test results against the v1.1.2 version in JIRA:
mvn clean verify -Dbrowser=firefox -DjiraURL=http://jira:8080 -DjiraResultVersion=v1.1.2 -DjqlQuery="labels=REGRESSION"
For full lists of platforms/browsers supported see: BrowserStack and SauceLabs platform lists.