Test from Azure DevOps Server or Services

Using OpenText Functional Testing on a Windows machine, the Microsoft CI system Azure DevOps Server or Services can trigger test runs from the local file system, ALM, or the ALM Test Lab module.

This section describes how to integrate with the Azure DevOps Server or Services (formerly known as Team Foundation Server (TFS)). Set up your OpenText Functional Testing agent machine to work with the OpenText Functional Testing Azure DevOps Server and install the OpenText Functional Testing extension on the server.

Note:  

  • The same instructions apply if you are still using TFS.
  • For the sake of simplicity, further mentions of Azure DevOps Server in the OpenText Functional Testing Help Center also refer to Azure DevOps Services.

Set up an Azure agent Windows machine

Set up an Azure agent that the Azure DevOps Server will use to trigger the test runs.

Supported agent types

You can set the agent up to run in interactive mode or as a service (using the Local System Account).

Required permissions

Make sure the personal access token that the agent uses includes the following permissions: 

  • Agent Pools – Read and Manage

  • Build – Read and Execute

  • Release – Read, Write, and Execute

Azure DevOps integration prerequisites

To use the OpenText Functional Testing Azure DevOps integration, you must have the following installed on the agent machine:

  • Powershell version 4.0 or higher.
  • JRE, with the PATH environment variable pointing to the JRE installation folder.
  • OpenText Functional Testing. For details, see Installation.

    Note: Install OpenText Functional Testing if you plan to run the tests on the agent machine. For example, if your test runs use machines assigned by ALM Lab Management, you do not have to install OpenText Functional Testing on the Azure DevOps agent machine.

Back to top

Install the OpenText Functional Testing Azure DevOps integration files on the agent machine

Perform the following steps on your OpenText Functional Testing agent machine to set it up to work with the UFT One Azure DevOps extension.

  1. Navigate to the ADM-TFS-Extension GitHub repository releases page, and download the following files from the latest release into the folder that you want to use for the OpenText Functional Testing-Azure integration.

    • UFT.zip

    • unpack.ps1

  2. Run the Powershell unpack.ps1 script.

    The script performs the following steps:

    • Unpacks the folder and files required for the extension and OpenText Functional Testing agent to run. For example, you can see a UFT\UFTWorking folder.

    • Sets the UFT_LAUNCHER system environment variable. The variable's value should be the full path to the UFTWorking folder.

      Caution: If, for any reason, you move the OpenText Functional Testing-Azure integration files to another location, make sure to update the value of the UFT_LAUNCHER system environment variable accordingly.

Back to top

Install the UFT One Azure DevOps extension on your Azure DevOps Server

On an Azure DevOps server machine where you have Administrator privileges, install the UFT One Azure DevOps extension in one of the following ways:

Install the extension directly from the Visual Studio Marketplace

To locate the extension in the Marketplace, search for UFT One Azure DevOps extension.

Install the extension from the local gallery

Download the extension file (.vsix) from the ADM-TFS-Extension GitHub repository and save it locally.

Then install the extension from the local gallery.

For detailed steps on installing an Azure DevOps Server extension, see Microsoft's instructions for installing extensions on Azure DevOps.

Note: If you are still using a TFS server: The latest version of the TFS extension is no longer available on Marketplace. You can download it from the ADM-TFS-Extension GitHub repository and install it on TFS from the local gallery.

The UFT One Azure DevOps extension now displays as a valid extension for the server, and can be used to run OpenText Functional Testing tests.

Back to top

UFT One Azure DevOps extension updates

When a new version of the UFT One Azure DevOps extension is available, it is automatically updated on your Azure DevOps server.

To use this new version of the extension, you must manually update the folder containing the OpenText Functional Testing-Azure integration files on the agent machine:

  1. Clear any existing content from the _work/_tasks folder.

  2. Update the OpenText Functional Testing working folder:

    1. In the ADM-TFS-Extension GitHub repository releases page, download the UFT.zip file that matches your extension's version and unzip it.
    2. Replace the content of your UFTWorking folder with the newly downloaded content.

After you update the files on the agent machine, open any existing tasks in Azure DevOps and update the task version field to use the new version.

Note: Existing tasks can continue to use the previous extension version until you update the files.

Back to top

OpenText Functional Testing and Azure DevOps Server integration procedures

Trigger OpenText Functional Testing tests using any of the following procedures:

In each procedure, you add a task to your Azure DevOps pipeline to trigger running tests.

Note: If you want to create the UFT One Azure DevOps extension tasks using YAML, we recommend using the Assistant functionality that Azure DevOps provides. This will provide the format required by the extension version you are using.

Back to top

Set up Azure Storage for your test results

When running tests stored locally, you can upload the test result information generated by OpenText Functional Testing to an Azure Storage location. This lets you access the results from the Azure DevOps portal.

To support uploading OpenText Functional Testing test results to Azure Storage, perform the following steps:

On your Azure agent machine

  1. Install Windows PowerShell version 5 or later.

    Tip: Windows 10 and 11 have this installed by default.

  2. Install the Azure PowerShell module and sign in using the Connect-AzAccount command.

On Azure Portal:

  1. Create an Azure Storage account.

  2. Create a Resource Group.

  3. Create a Container. Set your container access level to Block Blob, so that you can access the resources directly from Azure DevOps as soon as the pipeline finishes running.

In each pipeline that runs tests from the file system:

Define the following pipeline variables: 

Variable name Definition
STORAGE_ACCOUNT

The name of the Storage Account you created for this purpose.

RESOURCE_GROUP

The name of the Resource Group.

CONTAINER The name of the Container.

In the pipeline steps that run your tests:

Specify that you want the OpenText Functional Testing results uploaded to storage, and specify the artifacts to upload. For details, see Run a test saved on your local machine.

Back to top

Security precaution

Although any sensitive information is encrypted and encoded, OpenText encourages you to routinely remove unnecessary configuration files generated by your Azure DevOps Server builds, which are not removed by the OpenText Functional Testing extension.

These are the files located in the UFTWorking\props folder.

By not implementing the file removal you may expose your system to increased security risks. You understand and agree to assume all associated risks and hold OpenText harmless for the same.

It remains at all times the Customer’s sole responsibility to assess its own regulatory and business requirements. OpenText does not represent or warrant that its products comply with any specific legal or regulatory standards applicable to Customer in conducting Customer's business.

Back to top