UFT One and Azure DevOps Server or Services

Using UFT One 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 UFT One with the Azure DevOps Server or Services (formerly known as Team Foundation Server (TFS)). Set up your UFT One agent machine to work with the UFT One Azure DevOps Server and install the UFT One extension on the server.


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

Set up an Azure agent Windows machine

Set up an Azure agent, or slave machine, that the Azure DevOps Server will use to trigger the UFT One 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

UFT One Azure DevOps integration prerequisites

To use the UFT One 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.
  • UFT One. For details, see Installation.

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

Back to top

Install the UFT One Azure DevOps integration files on the agent machine

Perform the following steps on your UFT One 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 UFT One-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 UFT One 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 UFT One-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.

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 UFT One 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 UFT One-Azure integration files on the agent machine:

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

  2. Update the UFT One 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

UFT One and Azure DevOps Server integration procedures

Trigger UFT One tests using any of the following procedures:

In each procedure, you add a task to your Azure DevOps pipeline to trigger running UFT One 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 UFT One test results

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

To support uploading UFT One 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 UFT One tests from the file system:

Define the following pipeline variables: 

Variable name Definition

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


The name of the Resource Group.

CONTAINER The name of the Container.

In the pipeline steps that runs your UFT One tests:

Specify that you want the UFT One 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 UFT One 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