Share this page

# Get open defects associated with a successful test run

This flow demonstrates how to get a list of open defects that are associated with a successful test run. You might want to run this API to check for defects that should be closed, based on successful test runs.

Areas: Test runs, Defects

In this topic:

## Entity relationship diagram

We need to access the following entities for this flow, and understand the relationships between these entities.

Entity | Relationships in this flow | Description of relationship | Reference / relationship fields
--- | --- | --- | ---
Defect | Phase | The phase indicates the status of an item, such as a defect. | phase
Run | Defects can be opened when running tests. |
Run | Test | Runs are associated with tests. | test
Defect | Defects can be opened for specific runs, for example, when discovered during that run. | run
Tests | Run | This aggregate resource collection represents types of tests, including manual, Gherkin, test suites, and automated. Tests can be associated with runs. | run

Back to top

## Flow

Let's create the REST API call step-by-step.

1. A defect is open, but the test associated with the defect runs successfully. Perhaps we just forgot to close the defects. The test in this flow has the ID 1113.

   As a first step, we list all defects in workspace 1002.

   `GET .../api/shared_spaces/<space_id>/workspaces/<workspace_id>/defects`

2. Let's now start building our query_clause. Our query clause will check for three criteria. We separate the criteria with semi-colons (;), which represents the And operator.

   The first criteria is to list defects in the workspace that are fixed. We use the phase reference field and filter by the logical_name field in the phase list for defects to look for fixed phases only.

   `GET .../api/shared_spaces/<space_id>/workspaces/<workspace_id>/defects?query="phase EQ {logical_name EQ ^phase.defect.fixed^}"`

3. In addition to examining only fixed defects, we only want to look at the runs for a specific test, 1113.

   `GET .../api/shared_spaces/<space_id>/workspaces/<workspace_id>/defects?query="phase EQ {logical_name EQ ^phase.defect.fixed^};run EQ {test EQ {id EQ 1113};}"`

4. Lastly, we want to add a clause to our query clause which checks the status of the run. We want to see only those defects for the test runs that were successful (passed).

   Status is a reference field. We use the logical_name field on the list node for run statuses to check for a status of passed.

   `GET .../api/shared_spaces/<space_id>/workspaces/<workspace_id>/defects?query="phase EQ {logical_name EQ ^phase.defect.fixed^};run EQ {test EQ {id EQ 1113}; status EQ {logical_name EQ ^list_node.run_status.passed^}}"`

The complete REST API call for this flow is:

`GET .../api/shared_spaces/<space_id>/workspaces/<workspace_id>/defects?query="phase EQ {logical_name EQ ^phase.defect.fixed^};run EQ {test EQ {id EQ 1113}; status EQ {logical_name EQ ^list_node.run_status.passed^}}"`

Back to top

## Javascript example

    /**
     * Flow: How to find open defects with associated successful run.
     * Use case:  I have fixed the defect and the test is find but I forgot to close the defect.
     * Find fixed defects with all associated successful run of a test with id x
     * @param requestor
     */
    function getClosedDefectsWithFailingTests2(requestor) {
      var testId = 1113;

      requestor.get('/defects?query="phase EQ {logical_name EQ ^phase.defect.fixed^};' +
        'run EQ {test EQ {id EQ '+ testId +'};' +
        ' status EQ {logical_name EQ ^list_node.run_status.passed^}}"', function(error, message, defects) {
        console.info(defects);
      });
    }

    exports.getClosedDefectsWithFailingTests2 = getClosedDefectsWithFailingTests2;

Back to top

See also:

- How to work with the REST API
- Common flows and ER diagrams
- Get closed defects associated with a failed test run

https://admhelp.microfocus.com ALM Octane 8942
Tips to improve your search results... ALM Octane Help Center ALM Octane Help 15.1.90 All View Local Help Center View Online Help Center back Go back in browser history forward Go forward in browser history Remove search highlights next topic Go to next topic previous topic Go to previous topic Print the current topic Version: