Endpoints
Tests

Tests

🚧

The Testify API is still in alpha and is subject to change without notice. Please contact us if you have any questions.

Assign tests to a team member or report results for the test.

GET /v1/tests/:testRunId

Gets all tests for the given test run.

Query Parameters

Relations should be specified as a comma-separated list of values. Valid relations for this endpoint are:

  • case
  • comments
{
  limit?: number;
  offset?: number;
  relations?: string;
}

Response Body

{
  tests: {
    id: string;
    createdAt: Date;
    createdBy: string;
    updatedAt: Date;
    updatedBy: string;
    displayId: number;
    name: string;
    preconditions: string;
    steps: {
      action: string;
      expectation: string;
    }[];
    assignedTo: string;
    result: "passed" | "failed" | "inProgress" | "untested";
    case?: {
      id: string;
      createdAt: Date;
      createdBy: string;
      updatedAt: Date;
      updatedBy: string;
      displayId: number;
      name: string;
      preconditions: string;
      comments?: {
        id: string;
        createdAt: Date;
        createdBy: string;
        updatedAt: Date;
        updatedBy: string;
        content: string;
      }[];
      steps: {
        action: string;
        expectation: string;
      }[];
      customFields: { [key: string]: any };
    };
    caseId: string;
    comments?: {
      id: string;
      createdAt: Date;
      createdBy: string;
      updatedAt: Date;
      updatedBy: string;
      content: string;
    }[];
  }[];
  pagination: {
    total: number;
    limit: number;
    offset: number;
  };
}

PUT /v1/tests/:testRunId

Create a new test for the given test run.

Request Body

{
  caseId: string;
}

Response Body

{
  test: {
    id: string;
    createdAt: Date;
    createdBy: string;
    updatedAt: Date;
    updatedBy: string;
    displayId: number;
    name: string;
    preconditions: string;
    steps: {
      action: string;
      expectation: string;
    }[];
    assignedTo: string;
    result: "passed" | "failed" | "inProgress" | "untested";
    caseId: string;
  };
}

POST /v1/tests/:testId

Updates the given test.

Request Body

{
  assignedTo?: string;
  result?: "passed" | "failed" | "inProgress" | "untested";
}

Response Body

{
  test: {
    id: string;
    createdAt: Date;
    createdBy: string;
    updatedAt: Date;
    updatedBy: string;
    displayId: number;
    name: string;
    preconditions: string;
    steps: {
      action: string;
      expectation: string;
    }[];
    assignedTo: string;
    result: "passed" | "failed" | "inProgress" | "untested";
    case?: {
      id: string;
      createdAt: Date;
      createdBy: string;
      updatedAt: Date;
      updatedBy: string;
      displayId: number;
      name: string;
      preconditions: string;
      comments?: {
        id: string;
        createdAt: Date;
        createdBy: string;
        updatedAt: Date;
        updatedBy: string;
        content: string;
      }[];
      steps: {
        action: string;
        expectation: string;
      }[];
      customFields: { [key: string]: any };
    };
    caseId: string;
    comments?: {
      id: string;
      createdAt: Date;
      createdBy: string;
      updatedAt: Date;
      updatedBy: string;
      content: string;
    }[];
  };
}

DELETE /v1/tests/:testId

A successful response will return a response with a status code of 200 and no data parameter:

{
  "ok": true,
  "requestId": string,
  "duration": number,
}

GET /v1/tests/test/:identifier

Get a specific test by its identifier. An identifier is different from the test ID and is in the form of PROJ-T###, where PROJ is the project identifier.

Query Parameters

Relations should be specified as a comma-separated list of values. Valid relations for this endpoint are:

  • case
  • comments
  • test_run
{
  relations?: string;
}

Response

{
  test: {
    id: string;
    createdAt: Date;
    createdBy: string;
    updatedAt: Date;
    updatedBy: string;
    displayId: number;
    name: string;
    preconditions: string;
    steps: {
      action: string;
      expectation: string;
    }[];
    assignedTo: string;
    result: "passed" | "failed" | "inProgress" | "untested";
    case?: {
      id: string;
      createdAt: Date;
      createdBy: string;
      updatedAt: Date;
      updatedBy: string;
      displayId: number;
      name: string;
      preconditions: string;
      comments?: {
        id: string;
        createdAt: Date;
        createdBy: string;
        updatedAt: Date;
        updatedBy: string;
        content: string;
      }[];
      steps: {
        action: string;
        expectation: string;
      }[];
      customFields: { [key: string]: any };
    };
    caseId: string;
    comments?: {
      id: string;
      createdAt: Date;
      createdBy: string;
      updatedAt: Date;
      updatedBy: string;
      content: string;
    }[];
    testRun?: {
      id: string;
      createdAt: Date;
      createdBy: string;
      updatedAt: Date;
      updatedBy: string;
      displayId: number;
      name: string;
      milestoneId?: string;
      results?: {
        total: number;
        passed: number;
        failed: number;
        inProgress: number;
        untested: number;
      };
    };
  };
}