Skip to main content
A scope allows the extension to request a family of operations. Your account rights, access level, and permissions on the project and area path then determine what you can actually do. Installing TestPulse does not grant administrator rights to users.

The six manifest scopes

Reports, settings, Repository and session saves also use Azure DevOps Extension Data. They do not modify test results; several saves are automatic. The action matrix lists targets and triggers.

Writing to plans and points

CSV test-case import: the workflow uses existing vso.work_write to create cases and vso.test_write to create a plan or static suites and add their cases. No additional scope is added. User rights on cases, plans, suites and area paths are still required. Cases identified by ID are reused without changing their fields. See the CSV tutorial, available from 2.74.0. CSV area paths: creating a case requires Edit work items in this node on its resolved Area Path. Managing a suite or reading the plan does not grant this permission. From 2.74.2, review the area proposed from the existing plan in the assistant; a populated CSV area takes priority. The preview names the case and area when Azure DevOps returns TF237111. No new OAuth scope or permission bypass is introduced. To create new cases, your account also needs Create tag definition at project level. TestPulse adds a technical testpulse-csv: tag to each new case so it can find a creation after a lost response. Cases reused by ID do not receive this tag. If tag creation is denied, ask a project administrator to check this permission; no new extension scope is needed. Coverage Builder creates a new plan and requirement-based suites after confirmation. It does not replace an existing plan. Repository can create a plan or add cases to an existing target. Its preview distinguishes creations, reused structures, additions and skipped cases. An existing target may be shared with other users: check it before confirming. Bulk reassignment modifies testers or configurations for points in the selected scope. It first displays the impact: affected points, suites, points already run and skipped cases.
Reassignment has no built-in undo. A configuration change can recreate a point and lose its associated result. Review the preview and the option to exclude executed points; export the previous state as CSV if needed. See Bulk reassignment.

Writing from Explore

A capture is uploaded to Azure DevOps when you confirm it in the capture editor; cancelling that editor does not transmit the capture. Dropping a file also triggers its upload as an attachment. Creating a Bug, Test Case or closure Task creates that object with the selected entries. Closure can also set the state of the Task it just created. When a promotion decision is recorded and host reporting is enabled, TestPulse adds a tag and comment to the host work item. It does not change its state or assignee. Reporting is skipped if the form has unsaved changes and can be disabled at project level. See Promotion decision.

Re-approving an updated extension

When a release adds a scope, an organisation administrator must approve the extension’s new permissions. A user cannot resolve this by changing TestPulse options. Ask the administrator to check the approval status. This approval does not replace the Azure DevOps rights required by an action. Do not change the manifest to fix a user’s permission.

Diagnosing denied access

  1. Record the action, target and complete message displayed, without copying a token or webhook URL.
  2. If the message mentions scopes or re-approval, ask the administrator to check the extension.
  3. If plan creation returns a 403 mentioning management of plans under an area path, check Manage test plans on the selected area path.
  4. If CSV validation reports TF237111, check the case’s resolved Area Path and Edit work items in this node there, separately from suite-management rights.
  5. For other denials, have the rights on the affected object and the user’s Azure DevOps access level checked. A 401 or 403 code alone does not identify the cause.

Privacy and data

Where data lives and travels.

Action matrix

What each feature reads or writes.