UiPath · Arazzo Workflow

UiPath Establish Requirement Traceability

Version 1.0.0

Resolve a test project, create a requirement and a covering test case, then list test cases.

1 workflow 1 source API 1 provider
View Spec View on GitHub AutomationRobotic Process AutomationRPAArtificial IntelligenceDocument ProcessingEnterprise AutomationOrchestrationTestingArazzoWorkflows

Provider

uipath

Workflows

requirement-traceability
Resolve a project, create a requirement and covering test case, then list cases.
Resolves a test project by name, creates a requirement and a covering test case, and lists the project's test cases to confirm.
4 steps inputs: externalId, projectName, requirementName, testCaseName outputs: projectId, requirementId, testCaseId, totalCount
1
findProject
listProjects
List the available test projects to resolve the project ID for the supplied project name.
2
createRequirement
createRequirement
Create a requirement within the resolved project to represent the specification to be covered.
3
createCoveringTestCase
createTestCase
Create a test case in the project intended to cover the new requirement.
4
listProjectTestCases
listTestCases
List the project's test cases to confirm the newly created covering test case is present.

Source API Descriptions

Arazzo Workflow Specification

uipath-requirement-traceability-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: UiPath Establish Requirement Traceability
  summary: Resolve a test project, create a requirement and a covering test case, then list test cases.
  description: >-
    A traceability pattern for Test Manager. The workflow lists the available
    test projects to resolve a target project by name, creates a requirement to
    represent a specification, adds a test case intended to cover it, and lists
    the project's test cases to confirm the new coverage is present. Every step
    spells out its request inline so the flow can be read and executed without
    opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: testManagerApi
  url: ../openapi/uipath-test-manager-openapi.yml
  type: openapi
workflows:
- workflowId: requirement-traceability
  summary: Resolve a project, create a requirement and covering test case, then list cases.
  description: >-
    Resolves a test project by name, creates a requirement and a covering test
    case, and lists the project's test cases to confirm.
  inputs:
    type: object
    required:
    - projectName
    - requirementName
    - testCaseName
    properties:
      projectName:
        type: string
        description: Name of the existing test project to resolve.
      requirementName:
        type: string
        description: Name of the requirement to create.
      externalId:
        type: string
        description: Optional external identifier for the requirement (e.g. a Jira key).
      testCaseName:
        type: string
        description: Name of the test case created to cover the requirement.
  steps:
  - stepId: findProject
    description: >-
      List the available test projects to resolve the project ID for the supplied
      project name.
    operationId: listProjects
    parameters:
    - name: pageSize
      in: query
      value: 100
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      projectId: $response.body#/projects/0/id
  - stepId: createRequirement
    description: >-
      Create a requirement within the resolved project to represent the
      specification to be covered.
    operationId: createRequirement
    parameters:
    - name: projectId
      in: path
      value: $steps.findProject.outputs.projectId
    requestBody:
      contentType: application/json
      payload:
        name: $inputs.requirementName
        externalId: $inputs.externalId
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      requirementId: $response.body#/id
  - stepId: createCoveringTestCase
    description: >-
      Create a test case in the project intended to cover the new requirement.
    operationId: createTestCase
    parameters:
    - name: projectId
      in: path
      value: $steps.findProject.outputs.projectId
    requestBody:
      contentType: application/json
      payload:
        name: $inputs.testCaseName
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      testCaseId: $response.body#/id
  - stepId: listProjectTestCases
    description: >-
      List the project's test cases to confirm the newly created covering test
      case is present.
    operationId: listTestCases
    parameters:
    - name: projectId
      in: path
      value: $steps.findProject.outputs.projectId
    - name: pageSize
      in: query
      value: 100
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      totalCount: $response.body#/totalCount
  outputs:
    projectId: $steps.findProject.outputs.projectId
    requirementId: $steps.createRequirement.outputs.requirementId
    testCaseId: $steps.createCoveringTestCase.outputs.testCaseId
    totalCount: $steps.listProjectTestCases.outputs.totalCount