Overview
OneTest accepts automated test results from any CI/CD pipeline. Results from your automated tests appear alongside manual and AI-driven test runs in a unified dashboard — giving you a single view of quality across all execution methods. There are three ways to report automated results:ReportPortal Agents
Drop-in compatible with pytest-reportportal, Java agent, and other RP agents
JUnit XML Import
Upload JUnit XML files from any test framework
MCP API
Use the OneTest MCP tools directly from Claude Code or any MCP client
Prerequisites
Before reporting results, you need an API key:- Go to tms.onetest.ai -> Settings -> Integrations and API Keys
- Click + Add API Key and copy the key immediately (it is shown only once)
- Note your Product UUID displayed on the same page
Method 1: ReportPortal Agents
OneTest is fully compatible with the ReportPortal v2 API. If your team already uses a ReportPortal agent, just point it at OneTest — no code changes required.Configuration
Set these environment variables in your CI/CD pipeline:Supported Agents
Any ReportPortal agent works out of the box:| Framework | Agent |
|---|---|
| pytest | pytest-reportportal |
| JUnit 5 | agent-java-junit5 |
| TestNG | agent-java-testng |
| Cypress | agent-js-cypress |
| Playwright | agent-js-playwright |
| Robot Framework | agent-Python-RobotFramework |
Example: pytest
Example: GitHub Actions
What Gets Reported
The ReportPortal agent sends a structured hierarchy:code_ref— the test’s fully qualified name (e.g.,test_login.py:TestLogin.test_valid_login)- Status — passed, failed, skipped
- Duration — execution time
- Logs — console output, stack traces, screenshots
Method 2: JUnit XML Import
For frameworks that don’t support ReportPortal agents, upload JUnit XML results directly:Example: GitHub Actions
JUnit XML import creates a single launch with all test cases as flat items (no suite hierarchy). For hierarchical reporting, use a ReportPortal agent instead.
Method 3: MCP API
If you use the OneTest QA Agent or any MCP-compatible client, you can record results directly through MCP tools.Setup
Add the MCP server to your.mcp.json:
Recording Results
Use/qa-onetest run in Claude Code to execute and record a full test run, or call the MCP tools directly:
/qa-onetest workflow.
API Endpoints Reference
| Endpoint | Method | Description |
|---|---|---|
/api/v2/{product_uuid}/launch | POST | Start a new test launch |
/api/v2/{product_uuid}/item | POST | Report a test item |
/api/v2/{product_uuid}/log | POST | Add a log entry (text, screenshot, etc.) |
/api/v1/products/{product_uuid}/import/junit | POST | Import JUnit XML results |
Viewing Automated Results
Once results are reported, they appear in the Test Runs section alongside manual and AI-driven runs. You can filter by source:- All runs — see everything together
- Automated — only CI/CD results
- Manual — only manual/AI-driven runs
- Pass/fail/skip breakdown with percentages
- Hierarchical test items — drill into suites, tests, and steps
- Logs and screenshots — console output, stack traces, failure screenshots
- Duration and timing — per-test and total execution time
Linking to Test Cases
When acode_ref from an automated result matches a test case’s automation_test_id, OneTest links them automatically. This enables:
- Tracking automated vs. manual coverage on the Automation Coverage dashboard
- Seeing automated results directly on the test case detail page
- Identifying automation gaps (tests marked automated but not running in CI/CD)
Cost
Each API call costs 1 coin from your weekly budget. Browser UI usage is always free. See Usage & Billing for details.
What’s Next?
Integrations and API Keys
Manage API keys and view your Product UUID
Automation Coverage
Track which automated tests are actually running
Viewing Results
Analyze results and trends in the dashboard

