Test Suite

Test Suite Integration

DevDynamics provides seamless integration for test automation suites, allowing engineering teams to send detailed test run data to the platform. This integration enables teams to gain actionable insights into test performance, identify bottlenecks, and track quality trends across projects.

Integration Overview

To integrate your test automation suite with DevDynamics, you need to send test run data via the provided API endpoint. The payload includes details such as test suite name, environment, test run status, and individual test case results.

Firewall Configuration

To enable connection to DevDynamics, permit outbound traffic for:

  • IP Address: 3.131.112.244

Prerequisites

  • To get your organization ID and API key, email: support@devdynamics.ai.

Endpoint

URL: https://api.devdynamics.ai/api/v1/test-runs/<your-devdynamics-orgId>/notify

Replace <your-devdynamics-orgId> with your orgId.

Method: POST

Headers

  • Content-Type: application/json

  • X-api-key: Your unique API key for authentication.

  • X-event: test

Sample Payload

Here is an example payload for notifying DevDynamics of a completed test run. This payload represents an End-to-End Test Suite executed on a production environment for a critical release.

curl --location --request POST 'https://api.devdynamics.ai/api/v1/test-runs/<your-devdynamics-orgId>/notify' \
--header 'Content-Type: application/json' \
--header 'X-api-key: your-api-key' \
--header 'X-event: test' \
--data-raw '{
    "id": "test-run-789",
    "projectId": "project-123",
    "name": "E2E Test Suite",
    "source": "github-actions",
    "assignee": "jane.doe",
    "type": "end-to-end",
    "status": "completed",
    "environment": "production",
    "prId": "PR-1024",
    "commit": "zxy987poi654",
    "repository": "github.com/org/example-repo",
    "artifact": "release-v2.3.1.tar.gz",
    "externalUrl": "https://github-actions.example.com/run/456",
    "branch": "main",
    "tag": "v2.3.1",
    "totalTests": 250,
    "passedTests": 245,
    "failedTests": 4,
    "skippedTests": 1,
    "startedAt": "2024-04-15T12:00:00Z",
    "completedAt": "2024-04-15T12:45:00Z",
    "tests": [
      {
        "testId": "test-101",
        "testName": "should_successfully_login_user",
        "type": "e2e",
        "status": "passed",
        "startedAt": "2024-04-15T12:00:05Z",
        "completedAt": "2024-04-15T12:00:10Z"
      },
      {
        "testId": "test-102",
        "testName": "should_handle_payment_gateway_error",
        "type": "e2e",
        "status": "failed",
        "startedAt": "2024-04-15T12:00:12Z",
        "completedAt": "2024-04-15T12:00:18Z"
      },
      {
        "testId": "test-103",
        "testName": "should_allow_admin_to_update_user_role",
        "type": "e2e",
        "status": "passed",
        "startedAt": "2024-04-15T12:00:20Z",
        "completedAt": "2024-04-15T12:00:25Z"
      },
      {
        "testId": "test-104",
        "testName": "should_redirect_unauthenticated_users_to_login",
        "type": "e2e",
        "status": "skipped",
        "startedAt": "2024-04-15T12:00:30Z",
        "completedAt": "2024-04-15T12:00:30Z"
      }
    ]
}'

Field Descriptions

Field

Description

id

Unique identifier for the test run.

projectId

Unique identifier of the test suite project.

name

Name of the test suite.

source

Source of the test run (e.g., Jenkins, GitHub Actions, etc.).

assignee

Name of the person responsible for the test suite.

type

Type of test suite (e.g., integration, e2e, unit, etc.).

status

Status of the test run (e.g., in-progress, completed, failed).

environment

Environment where the test suite was executed (e.g., staging, production).

prId

Associated Pull Request ID (if applicable).

commit

Git commit hash associated with the test run.

repository

Repository name .

artifact

Artifact generated from the test run (if applicable).

externalUrl

URL for accessing the test run logs in the source tool.

branch

Branch of the repository tested.

tag

Associated release tag.

totalTests

Total number of tests executed.

passedTests

Number of tests that passed.

failedTests

Number of tests that failed.

skippedTests

Number of tests that were skipped.

startedAt

Timestamp when the test run started.

completedAt

Timestamp when the test run completed.

tests

Array of individual test results with details.


Notes

  • Ensure your X-api-key is securely stored and not exposed in public repositories.

  • Test results will be available in your DevDynamics dashboard for further analysis.

Last updated