UAT Studioby Salvion
Help · Connections

Connect UAT Studio to Azure DevOps

Send issues from your UAT straight to your development team's Azure DevOps project, as Bug work items with the test step, the expected result, the screenshots and a link back. When the work item is done, the tester knows it's time to retest.

Takes about 10 minutesWho a workspace adminWorks with Azure DevOps ServicesPlans Team, Partner and Enterprise
Before you start

What you need

  • Azure DevOps Services: an address like dev.azure.com/yourcompany. (Azure DevOps Server on your own servers is not supported.)
  • An account that may create work items in the project the bugs should go to.
  • Admin rights in your UAT Studio workspace.
Tip: use a service accountWork items are created in the name of the account whose token you use. Many teams use a separate account such as UAT Studio for this, so work items don't depend on one person and are easy to recognise.
Set up · once per workspace

Connect your Azure DevOps project

1

Find your organization, project and process

Open your project in Azure DevOps and look at the address bar: dev.azure.com/acme/Customer Portal. The first part is the organization (acme), the second the project (Customer Portal), exactly as written there, spaces included.

Then check the process of the project: Project settings › Overview › Process.

ProcessWork item type to use
Agile, Scrum or CMMIBug: with Repro Steps, Severity, Priority and tags.
BasicIssue: Basic has no Bug type. The work item gets the title and description; Basic has no fields for severity and priority.
2

Create a personal access token

  1. In Azure DevOps, click the User settings icon at the top right (the person with a gear, next to your initials) and choose Personal access tokens.
  2. Click + New Token.
  3. Name: UAT Studio. Organization: your organization. Expiration: choose Custom defined, up to a year.
  4. Scopes: choose Custom defined and tick Work Items › Read & write. Nothing else is needed.
  5. Click Create and copy the token. Azure DevOps shows it only once: keep the window open until you have pasted it in step 4.
Put the expiry date in your calendarWhen the token expires, sending stops. Create a new token and paste it in UAT Studio; nothing else changes.
3

Add Azure DevOps in UAT Studio

Sign in at app.uat.studio, open your workspace and click Connections. Under Add a connection, choose Azure DevOps and click Add.

Add a connection, with Azure DevOps selected and the Add button
FieldWhat to fill in
NameHow the button reads: Send to Azure DevOps. Change it if you connect more than one project.
OrganizationThe part after dev.azure.com/, such as acme.
ProjectThe project name exactly as in Azure DevOps, such as Customer Portal.
Work item typeBug, or Issue in a Basic project (see step 1).
Area pathOptional: where the work items go, such as Customer Portal\UAT. Empty: the project's default area.

Click Save settings.

The Azure DevOps connection card with organization acme, project Customer Portal and work item type Bug
4

Store the token

Paste the token from step 2 in the field Personal access token and click Store token. The field then shows only the last 4 characters.

The personal access token field with a pasted token, hidden as dots, and the Store token button
Your token stays yoursThe token is sent once over an encrypted connection and stored encrypted. Nobody can read it back: not your colleagues, not UAT Studio support.
5

Test the connection

Click Test connection. UAT Studio checks the token, the project and that the work item type exists. When all is well you see Connected to project … ; work items of type Bug can be created, and OK next to the last test. If the type doesn't exist, the message lists the types the project has.

The connection card after a successful test: last test OK, connected to project Customer Portal in acme
Every test day

Sending issues to Azure DevOps

One issue

Open the issue. Under Ticket in the development team's system, click Send to Azure DevOps.

The issue panel with the Send to Azure DevOps button

The work item number and a link appear on the issue, and its history shows when it was sent and by whom. An issue that is already linked can't be sent twice by accident.

The issue panel after sending: linked to Azure DevOps work item 4101, with a link to open it

All issues after the triage call

In Issues › Triage, give each new issue a decision. When you're done, click Send 3 to Azure DevOps (or however many there are) to create all work items at once.

What the work item contains

  • Title: the issue number and title, such as ISS-012: Quote PDF shows the wrong VAT rate.
  • Repro Steps and Description: what the tester wrote, the test case with the step that failed and the expected result, and who found it, with a link back to UAT Studio.
  • Severity, Priority and the tags UAT and the issue number (not in a Basic project).
  • Attachments: the screenshots and files of the issue, up to 10 files of at most 10 MB each.

Merging duplicates

When you merge two issues that both have a work item, the duplicate work item gets a comment, the link Duplicate Of to the other one, and is closed (Closed, Done or Resolved, whichever the process allows). When only the duplicate had a work item, the issue that stays takes it over.

Status back

When the fix is done in Azure DevOps

When the developer sets the work item to Resolved, Done or Closed, the issue in UAT Studio becomes Ready for retest and the tester gets a mail. Active, Committed or Doing set the issue to In progress. The state in Azure DevOps is shown next to the link.

A failed retest is never undone: when the tester reopens the issue while the work item is still Resolved, UAT Studio leaves it open. A closed issue stays closed.

By itself, or straight away

Without doing anything, UAT Studio looks up the state each time an admin opens the issues, and with the button Update ticket status.

Straight away: let Azure DevOps tell UAT Studio when a work item changes, with a service hook. You need to be a project administrator in Azure DevOps.

  1. In UAT Studio, under Connections, in the Azure DevOps connection, click Create webhook address and copy the address. It's shown only once.
Status back in the connection: the webhook address with a Copy button and the steps for Azure DevOps
  1. In Azure DevOps, open the project and go to Project settings › Service hooks. Click Create subscription.
  2. Scroll down the list of services, choose Web Hooks and click Next.
New service hooks subscription: the list of services with Web Hooks at the bottom
Step 3: Web Hooks is near the bottom of the list.
  1. Trigger on this type of event: Work item updated. Under Filters, set Field to State, so only state changes are sent. Area path and Work item type may stay [Any], or narrow them to your project area and type. Click Next.
Trigger: Work item updated, with the filters Area path, Work item type and Field set to State
Step 4: Work item updated, Field State.
  1. URL: paste the address from step 1. Leave the other fields (username, password, headers) empty. Click Test to check, then Finish.
Action: Post via HTTP, with the URL field
Step 5: paste the address in URL.
Keep the address within the teamThe address works as a key for reporting work item states only. Lost it, or shared it by mistake? Click New address in UAT Studio and update the service hook: the old address stops working at once.
Roles

Who can do what

AdminsAdd, change, test and remove connections; send issues.
Testers, stakeholders, developersSee the work item number and link on an issue. They can't send issues or see connection settings.
Audit logEvery change to a connection is recorded, so you always see who changed what and when.
Troubleshooting

If something goes wrong

You seeWhat to do
The token is not accepted, or has no access to this organizationCheck the organization name (the part after dev.azure.com/), that the token was made for that organization, and that it has the scope Work Items (Read & write). Or create a new token and store it again.
The project has no work item type "Bug"The project probably uses the Basic process: fill in Issue under Work item type. The message lists the types there are.
Not found (404)Check the project name: exactly as in the address bar, spaces included.
It worked before, now it doesn'tThe token has probably expired or was revoked. Create a new one and store it; the rest stays as it is.
The status doesn't come backOpen the issues as an admin, or click Update ticket status. With a service hook: in Azure DevOps, Project settings › Service hooks shows whether it ran and what came back; under Connections in UAT Studio you see when the last message arrived.
No Send to Azure DevOps buttonOnly admins see it, and only when the connection is On and has a stored token.
Connections are not part of your planConnections come with Team, Partner and Enterprise. Your admin can upgrade under Plan & billing.

Still stuck? Mail support@uat.studio with the message you see. Never send us the token itself.

Using Jira? See Connect UAT Studio to Jira. All guides: UAT Studio help.

Security

How we handle your token

  • The token goes from your browser to our server once, over an encrypted connection.
  • It is stored encrypted (AES-256). The key to decrypt it is kept separately from the database, so a copy of the database alone is useless.
  • Nobody can read the token back: not in the app, not through support.
  • UAT Studio uses the token only to test the connection, to create the work items you send (with their files), to read the state of those work items and to close a duplicate after a merge. It needs only the scope Work Items.
  • Remove the connection or revoke the token in Azure DevOps, and access ends straight away.