Use Azure DevOps Server or Services to trigger a test saved in ALM

This topic describes how to run a UFT One test saved in ALM.

Note: This topic describes working with UFT Azure DevOps extension version 2.0.3. To benefit from the latest functionality, we recommend updating existing tasks' versions to 2.*. When using this extension version, make sure that you installed the corresponding UFT.zip file from the ADM-TFS-Extension GitHub repository.

Prerequisite

Before you can run UFT One tests from ALM, you must first complete the following setup steps once on the machine that the Azure DevOps Server will use to run the UFT One tests:

  1. Install the ALM Connectivity tool.

  2. Register the ALM Client.

For information on performing these steps, see the Add-ins and Extensions Catalog in the ALM Help Center.

Back to top

Run a test saved in ALM

In Azure DevOps Server, do the following:

  1. Create a new empty pipeline using the classic editor (Note: If you are using TFS, skip this step).

    Select the agent pool that includes the agent on which you want to run your tests.

    For more details, see the Microsoft Azure documentation.

  2. Add a UFT One task or build step, in the correct place in the build order:

    1. In the Task catalog, select the Test tab to view a list of all available test tasks.

    2. Select the UFT One ALM Run task, and click Add. A new, empty task is added as part of your build plan.

  3. Click Close to edit your build step. Provide the following details for your task:

    Description (optional)

    By default, the Azure DevOps Server CI system uses a preset descriptor for the task.

    Click Rename to provide a more meaningful name for your step.

    ALM server

    The ALM server where your test is saved. Use the following syntax:

    http://<ALMserver name> or IP:port/qcbin

    You may also need to connect to ALM using common registration mode.

    If this is the case, enter the URL format as http://<ALMserver name> or IP:port/qcbin/start_a.jsp?common=true.

    ALM Credentials

    Depending on the authentication type required by your ALM server, credentials can be a username and password or an API key for SSO authentication.

    • Username and password:

      User name: The ALM user name to use to access the server.

      Password: The password for the ALM user specified above.

    • SSO authentication (UFT One 15.0.1 or later):

      Select SSO enabled.

      Enter the Client ID and API key secret obtained from your ALM site administrator.

    Ensure that the ALM user or client specified in this task has the correct permissions to open and run the UFT One tests.

    For details on permissions, see the ALM Help Center.

    Domain The domain in the ALM server where the project containing the tests is stored.
    Project The project containing the tests.
    Test sets

    The test sets to run with this build task. Provide a full ALM path to these test sets.

    Each line in this field can contain a test set or folder.

    Note: When entering the test set's path, it does not matter if you specify the Root folder or not.

    Timeout

    The amount of time (in seconds) to wait if there is a problem opening or running the test.

    If the field is left blank, there is no timeout.

    Run mode

    The machine on which to run the test sets. Options include:

    • Run locally (default) - Run tests on the agent machine.
    • Run remotely - Run tests on the host you specify in Testing tool host.
    • Run on a planned host - Run tests on a planned host, as defined in ALM.
    Testing tool host

    The name of the host selected to run the test sets.

    Note: Required for Run remotely run mode. Otherwise irrelevant.

  4. (Optional) From the Test tab, add a Publish Test Results task or build step to publish test results to Azure Pipelines.

    Provide the following information for the step, to create a JUnit report based on UFT One's XML run result report:

    Display name Specify a name for the step.
    Test result format JUnit
    Test results files **/*.xml
    Search folder

    Provide the path to the folder that contains the test result XML files.

    Use the following format: 

    <Path to UFTWorking\res folder>\Report_$(Build.BuildNubmer)

    Test run title

    Specify a title for the report.

    Use environment variables in the title as follows, to base the report name on the pipeline name and the build number, so they can be retrieved on Azure DevOps:

    $(Build.DefinitionName)_$(Build.BuildNumber)

  5. Configure the CI system control options for the step, including:

    Enabled Specify whether the step should be run as part of this build.
    Continue on error Instructs the CI system to stop or continue the build if there is an error on this step.
    Run this task Indicates to the CI system when to run this step. To publish the results after running the tests failed, select Even if a previous task has failed, unless the build was canceled.
  6. Run the build. When the build runs, the test runs as a build task with the specified settings.

    Note: If you manually stop the build from the Azure DevOps server, the UFT One process remains in use and you are unable to continue running the test by connecting to ALM.

    To fix this, manually stop the UFT.exe and UFTRemoteAgent.exe process and resume the build from the Azure DevOps server.

Back to top

View the test results

After the test run, you can view the run results in the following ways: 

A visual report

In the Extensions tab of the run results, you can see a report including the following parts: 

  • The UFT Report section shows the test run status.

  • The Run Summary shows the number of tests that ran, the percentage of each status and so on.

A JUnit test result report

If you added a Publish Test Results step, you can view the JUnit results on the Tests tab of the run results.

A link to the run results that are saved on ALM (if you run the tests from TFS)

UFT One automatically saves a link to the run results on ALM as an artifact with the build.

View this link on the Summary tab of the run results.

For example:

Back to top

See also: