Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction: For Software Development Engineers in Test (SDET), executing tests offline provides flexibility, especially when there's no immediate access to the main software or in environments with limited connectivity. This guide will walk you through the process of working with offline suites in the Qualitia Automation Studio (QAS) using CLI commands.

 

📚Prerequisites:

  • Access to the Qualitia Automation Studio (QAS) Client.

  • An offline package saved on your computer.

  • Basic familiarity with Command Line Interface (CLI) operations.

🔂 Process Flow:

Executing Offline Suite using CLI Commands

You want to run tests offline using command prompt due to limited access to the QAS client.

  1. open the Command Prompt.

  2. Navigate to the location of your saved offline package.

  3. Input: java -jar qualitiaoffline-8.6.x.jar to execute the offline package with the default settings.

  4. However, if you wish to override certain settings:

    1. Mapped Execution Profile: Enter the location of the execution profile you want in the following ways:

      1. The location of the execution profile must be enclosed by double inverted commas.

      2. It must be the first argument. For example: java -jar qualitiaoffline-8.6.x.jar "D:/ABCsettings.JSON"

    2. Offline Suite: Enter the location of the offline suite as SuitesDir="Suite_Path". For example, java -jar qualitiaoffline-8.6.x.jar SuitesDir="D:/OfflineSuite/Suite1

    3. Environment Variable: Enter environment variables and their associated values in the format java -jar qualitiaoffline-8.6.x.jar env.var1=value1 env.var2=value2. Here var1 and var2 denote environment variables, and value1 and value2 denote the associated values. For example, java -jar qualitiaoffline-8.6.x.jar env.username=john.smith env.password=12345

    4. Other Parameters defined in the Selected Execution Profile: Enter the parameters preceded by their hierarchy in name=value format as command-line arguments. For example, to use a specific version of Google Chrome, enter the command line argument as follows:

      java -jar qualitiaoffline-8.6.x.jar googleChrome.version=81.0.1.36 In this example, googleChrome is the topmost parameter and then version. You can provide multiple property=value pairs separating them with space, as shown in the following example:
      java -jar qualitiaoffline-8.6.x.jar googleChrome.version=81.0.1.36 PageTimeoutInSeconds=10

      If you are overriding the mapped execution profile enter it as the first argument, as shown in the following example:

      java -jar qualitiaoffline-8.6.x.jar "D:/ABCsettings.JSON" googleChrome.version=81.0.1.36 PageTimeoutInSeconds=10

      If a key has a dot in its name, you need to put backslash before the dot such as chrome.chromedriverVersion, which is under androidChrome, as shown in the following example:
      java -jar qualitiaoffline-8.6.x.jar androidChrome.chrome\.chromedriverVersion=83

  5. Press Enter to initiate the offline suite execution.

Viewing an Offline Suite Execution Report

After running the tests, you need a comprehensive report to analyze the results.

...

you can manually upload the locally saved report.

Editing the Test Data for an Offline Suite

Before re-running tests or for a different testing scenario, you might need to change some test data.

...

Info

 Qualitia recommends using the Qualitia Client because it displays ❌ error message when change in test data is incorrect.

 

Editing Test Data in Offline Suite Test Data File

In scenarios where access to the Qualitia Client is limited, the offline suite provides flexibility by allowing you to directly modify test data. This guide simplifies the process for you, ensuring that they can quickly and effectively adapt their test cases as needed.

...

Note
  1. Don't add or remove columns, or change the column order.

  2. Use $NULL$ where you don't want to set a value for a parameter.

  3. Delete rows for unwanted task or test case (TC) iterations.

Steps to Modify Test Data for an Offline Suite

  1. Go to the offline suite folder.

  2. Backup the test data file you'll edit.

  3. Open the test data Excel file.

  4. From the third row, tweak values as needed. The first row shows tasks in grey, with the second row detailing their parameters.

    1. TC Iteration: Shows the number for every TC Iteration. There must be at least one TC Iteration for executing the test case.

    2. Selection: Shows as True or False for the enabled or disabled iterations. You can modify the values. This is applicable for TC iterations only.

    3. DataSetTag: Optionally, enter a label for identifying the dataset in the test case execution report. You can modify the values.

  5. To add a TC iteration, insert a row with values for TC Iteration Number, Selection, and DataSetTag (optional).

  6. For adding a task iteration, insert a row with values for associated parameters.

  7. Save the Excel file after editing.

Executing Offline Suite on a Shared Drive

You want to execute tests located in a shared location, either for collaborative purposes or due to infrastructure constraints. You can run an offline suite in a shared drive for web and mobile applications in two ways: by mapping the shared drive to a local computer or without mapping.

Executing a Shared Offline Suite by Mapping the Shared Drive

For a more seamless experience, you might prefer mapping the shared drive to your local system.

...

By following this guide, you can efficiently manage, adjust, and execute their test scenarios, ensuring accurate results even in offline or shared environments.

 

 Executing a Shared Offline Suite Without Mapping the Shared Drive to the Local Computer

...

Info

Note: You cannot execute an offline suite using the command prompt by specifying the complete UNC (Shared location).

Offline Suite Execution for Desktop Applications on a Shared Drive

You can execute an offline suite present in a shared drive for desktop applications.

...

  1. Configure the offline suite as per the requirements. For detailed instructions, refer to Configuring the System Execution Profile Settings for a Desktop Project.

  2. Do one of the following: 

    • Open command prompt, navigate to mapped drive location that contains the offline package and offline suite

    • Navigate to the mapped drive location that contains the offline package and the offline suite and double-click the offline package (9.x.x jar).

Executing Offline Suites & Integrating with CI Tools

...

Introduction:

This guide offers SDETs a clear path to execute offline suites stored on shared drives and integrate them with various Continuous Integration (CI) tools.

Executing an Offline Suite from a Shared Drive without Local Mapping:

Method: Direct execution from the shared drive. Steps:

...

Info

Note: Using the command prompt with the full UNC path for execution isn't supported.

Execution using Continuous Integration Tools:

Method: Integration via QAS settings.

  1. Ensure QAS's capability to integrate with CI tools like

    1. Jenkins

    2. TeamCity

    3. Bamboo.

  2. For mobile application tests, even though QAS hosts the Appium Server internally, use a custom Appium server for different Appium versions if needed.

  3. Set the CI_Tool property in the mapped execution profile before starting.

Headless Executions:

Method: Browser-based testing without GUI.

Steps:·      

  1. Recognize that headless executions run faster since they don't launch the browser UI. QAS supports this for Google Chrome and Mozilla Firefox.

...

  1. To execute tests in headless mode:

...

    1. Via QAS Client/OfflineConfigManager:

...

    1. Open the associated execution profile.

...

    1. Choose the browser.

...

    1. Activate the respective headless setting

...

    1. , via CLI:

...

      1. For Chrome: java -jar qualitiaoffline-xxxx.jar googleChrome.chromeOptions.args=--headless

...

      1. For Firefox: java -jar qualitiaoffline-xxxx.jar firefox.firefoxOptions.args=--headless

...

Info

Note: Xvfb on Linux isn't supported anymore. Use the methods mentioned for headless execution on Linux.

...

Method: Setup via Qualitia Client or OfflineConfigManager.

Steps:19.

  1. Open the associated execution for a test suite.

...

  1. From the Browser list, select either Chrome or Firefox.

...

  1. Check the "Desired Capabilities" checkbox.

...

  1. Based on your browser choice:

...

    1. For Chrome:

...

      1. Select the chromeOptions checkbox.

...

      1. Check the args checkbox.

...

      1. Input --headless in the associated field.

...

    1. For Firefox:

...

      1. Select the firefoxOptions checkbox.

...

      1. Check the args checkbox.

...

      1. Input --headless in the associated field.

...

  1. Click

...

  1. Ok

...

  1. .

Method: CLI-based execution for headless mode.

Steps:24.

  1. Open the Command Prompt.

...

  1. Navigate to the directory containing the offline package.

...

  1. To run on Chrome, use:

...

  1. java -jar qualitiaoffline-xxxx.jar googleChrome.chromeOptions.args=--headless

...

  1. For Firefox execution, input:

...

  1. java -jar qualitiaoffline-xxxx.jar firefox.firefoxOptions.args=--headless

 

 In In conclusion, this guide ensures that SDETs have the tools and knowledge to execute offline suites, integrate with CI tools, and utilize headless executions effectively.