---
title: "Get performance test results"
method: GET
path: "/getPerfTest"
---

# Get performance test results

`GET /getPerfTest`

Given a test ID, get the performance test results for it

## Query parameters

- `testId` string, required

## Response `200`

Success

- object
  - `status` 'PROCESSING' | 'DONE' — The status of the test. Note that `performanceTests` will be empty until the status is DONE.
  - `headId` string — The Emerge Id of the head build
  - `baseId` string — The Emerge Id of the base build
  - `performanceTests` PerfTestData[]
    - `id` string, required
    - `name` string, required — The name of the span, unique per class
    - `className` string, required — The name of the class that this test is executed from.
    - `status` 'PROCESSING' | 'ERROR' | 'DONE', required
    - `reason` string — If the status is ERROR this may contain a short description indicating the reason for the error
    - `timeTaken` number — Time in seconds taken to complete this span. Measured from when the span was requested to when results were available.
    - `buildDetails` object
      - `baseBuildDetails` PerfTestBuildDetails
        - `samples` object[] — Data on each individual test recorded.
          - `userInfo` object — Custom object passed through span notification that can contain additional debugging data.
          - `timeTaken` number — Time in seconds that this metric took. Note that this cannot be used for comparisons across multiple tests since the hardware running the app can change.
      - `currentBuildDetails` PerfTestBuildDetails
        - `samples` object[] — Data on each individual test recorded.
          - `userInfo` object — Custom object passed through span notification that can contain additional debugging data.
          - `timeTaken` number — Time in seconds that this metric took. Note that this cannot be used for comparisons across multiple tests since the hardware running the app can change.
    - `buildComparison` object
      - `conclusion` 'UNCHANGED' | 'REGRESSED' | 'IMPROVED' | 'INCONCLUSIVE' — Overal conclusion from testing
      - `comment` string — A summary of the performance test that could be used for a PR comment
      - `percentChange` number — Amount of change detected, if the conclusion is not REGRESSED or IMPROVED this field will still represented the difference in our testing but does not have statisitical significance.
      - `intervals` object[] — Confidence intervals for various p-values.
        - `percentConfidence` number — The probability (as a percentage) that the true difference is within this confidence interval.
        - `percentInterval` number — The difference from the percentChange that is within this confidence interval. The interval is percentChange +/- percentInterval.
    - `device` object
      - `model` string — Model of the device that this performance test was executed on.
      - `os` string — Operating system version running on the device this performance test was executed on.

---

[API](https://skmtc.dev/emergetools/apis/emerge-api.md) · [All operations](https://skmtc.dev/emergetools/apis/emerge-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/emergetools/emerge-api/revisions/5af529b19931/schema)
