Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
  1. Test Cases are standard Jira Issues, but with the QAlity issue type.

  2. Test Cycles are QAlity-specific data models. They are created using the a call to the QAlity backend.

    Code Block
    // POST
    /testCycles
    
    // body
    {
      name: String      // name of the test cycle
      projectId: String // project id that the test cycle should belong to
      versionId: String // version of the test cycle, OPTIONAL - can be ommited
      dueDate: String   // due date of the test cycle, OPTIONAL- can be ommited
      comment: String   // description of the test cycle, OPTIONAL - can be ommited
    }
    
    // response
    TestCycle = {
      id: Long
      name: String
      versionId: String
      dueDate: LocalDate
      projected: String
      comment: String
      createdDate: ZonedDateTime
      closed: Boolean
      testCases: TestCaseInCycle
    }
  3. Having the Test Cases and Test Cycle, Test Cases can be added to the Test Cycle.

    Code Block
    // POST
    /testCasesInCycle
    
    // body
    TestCaseInCycle = {
      testCases: List<Long>Array<Long>,  // list of Jira issue IDs that you want to add to the cycle
      testCycleId: Long       // ID of the test cycle 
    }
    
    // response
    List<TestCaseInCycle>Array<TestCaseInCycle>
  4. Then the executions can be created based on Test Cases in the Test Cycle.

    Code Block
    // POST
    /testExecution
    
    // body
    {
      name: String,
      status: Status,           // one of: Status
      testCaseId: Long,
      testSteps: [],            // should be an empty array: []
      testCaseInCycleId: Long,  // OPTIONAL - can be ommited, retrieve this id from test cycle. Check POST Add Test Case To Cycle
    }
    
    // response
    TestExecution = {
        id: Long
        name: String
        executionAssignee: String           // assignee user ID
        status: String                      // one of predefined statuses
        testCaseId: Long
        testCaseInCycleId Long
        comment: String
        testSteps: Array<TestExecutionStep>
    }
    
    // models
    Status = 'passed' | 'failed' | 'in_progress' | 'blocked' | 'unexecuted'
    
    TestExecutionStep = {
      attachments: Array<Attachemnt>
      comment: String
      id: Long
      linkedIssues: Array<{linkedIssueId: Long}>
      status: Status
      testCaseStepId: Long
    }
  5. To make any updates in execution, PUT request should be made.

    Code Block
    // PUT
    /testExecution
    
    // body
    TestExecution // same as response from the previous step
    
    // response
    TestExecution // same as response from the previous step

...