Qase TestOps Robot Framework Reporter
Qase Robot Framework Reporter enables seamless integration between your Robot Framework tests and Qase TestOps, providing automatic test result reporting, test case management, and comprehensive test analytics.
Features
- Link automated tests to Qase test cases by ID
- Auto-create test cases from your test suites
- Report test results with rich metadata (fields, parameters)
- Automatic step reporting from keywords
- Multi-project reporting support
- Support for parallel execution with pabot
- Flexible configuration (file, environment variables)
Installation
pip install qase-robotframework
Quick Start
1. Create qase.config.json in your project root:
{
"mode": "testops",
"testops": {
"project": "YOUR_PROJECT_CODE",
"api": {
"token": "YOUR_API_TOKEN"
}
}
}
2. Add Qase ID to your test:
*** Test Cases ***
User can log in with valid credentials
[Tags] Q-1
Open Login Page
Enter Valid Credentials
Verify Dashboard Is Visible
3. Run your tests:
robot --listener qase.robotframework.Listener tests/
Upgrading
For migration guides between major versions, see Upgrade Guide.
Configuration
The reporter is configured via (in order of priority):
- Environment variables (
QASE_*, highest priority) - Config file (
qase.config.json)
Minimal Configuration
| Option | Environment Variable | Description |
|---|---|---|
mode |
QASE_MODE |
Set to testops to enable reporting |
testops.project |
QASE_TESTOPS_PROJECT |
Your Qase project code |
testops.api.token |
QASE_TESTOPS_API_TOKEN |
Your Qase API token |
Example qase.config.json
{
"mode": "testops",
"fallback": "report",
"testops": {
"project": "YOUR_PROJECT_CODE",
"api": {
"token": "YOUR_API_TOKEN"
},
"run": {
"title": "Robot Framework Automated Run"
},
"batch": {
"size": 100
}
},
"report": {
"driver": "local",
"connection": {
"local": {
"path": "./build/qase-report",
"format": "json"
}
}
}
}
Full configuration reference: See qase-python-commons for all available options including logging, status mapping, execution plans, and more.
Usage
Link Tests with Test Cases
Associate your tests with Qase test cases using the Q-{ID} tag:
*** Test Cases ***
User Registration
[Tags] Q-1
Open Registration Page
Fill Registration Form
Submit Form
Verify Registration Success
User Login
[Tags] Q-2 Q-3
Open Login Page
Enter Credentials
Click Login Button
Add Metadata
Enhance your tests with fields using the qase.fields tag:
*** Test Cases ***
Critical Purchase Flow
[Tags] Q-1 qase.fields:{"severity":"critical","priority":"high","layer":"e2e"}
[Documentation] Verify user can complete a purchase
Add Item To Cart
Proceed To Checkout
Complete Payment
Add Parameters
Report specific variables as parameters using the qase.params tag:
*** Variables ***
${USERNAME} testuser
${PASSWORD} testpass
*** Test Cases ***
Login Test
[Tags] Q-1 qase.params:[USERNAME, PASSWORD]
Login With Credentials ${USERNAME} ${PASSWORD}
Verify Login Success
Ignore Tests
Exclude specific tests from Qase reporting:
*** Test Cases ***
Work In Progress
[Tags] qase.ignore
Log This test is not reported to Qase
Test Result Statuses
| Robot Framework Result | Qase Status |
|---|---|
| PASS | passed |
| FAIL (AssertionError) | failed |
| FAIL (other exception) | invalid |
| SKIP | skipped |
For detailed usage examples, see the Usage Guide.
Running Tests
Basic Execution
robot --listener qase.robotframework.Listener tests/
With Environment Variables
export QASE_MODE=testops
export QASE_TESTOPS_PROJECT=PROJ
export QASE_TESTOPS_API_TOKEN=your_token
robot --listener qase.robotframework.Listener tests/
With Robot Variables
robot --listener qase.robotframework.Listener \
--variable QASE_TESTOPS_PROJECT:PROJ \
--variable QASE_TESTOPS_API_TOKEN:your_token \
tests/
Parallel Execution with Pabot
pabot --listener qase.robotframework.Listener tests/
Requirements
- Python >= 3.9
- robotframework >= 5.0.0
Documentation
| Guide | Description |
|---|---|
| Usage Guide | Complete usage reference with all tags and options |
| Multi-Project Support | Reporting to multiple Qase projects |
| Upgrade Guide | Migration guide for breaking changes |
Examples
See the examples directory for complete working examples.
License
Apache License 2.0. See LICENSE for details.
Metadata
Release files for qase-robotframework 7.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| qase_robotframework-7.0.0.tar.gz | 23.9 kB | Without provenance | Details for qase_robotframework-7.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| qase_robotframework-7.0.0-py3-none-any.whl | Python 3 | none | any | Details for qase_robotframework-7.0.0-py3-none-any.whl |
Total release size: 46.1 kB
Release files / qase_robotframework-7.0.0.tar.gz
| Download URL | qase_robotframework-7.0.0.tar.gz |
|---|---|
| Size | 23.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
53ea761d3cf5656063bc159661879689949ce8526b8cd78fc95bc4f497002d92
|
|
BLAKE2b-256 checksum How to use checksums |
18d8664ca2187215a877f816866cd897ef5b23a6d31cfbdba66fe682d8d1b58c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / qase_robotframework-7.0.0-py3-none-any.whl
| Download URL | qase_robotframework-7.0.0-py3-none-any.whl |
|---|---|
| Size | 22.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
34d83b802789beac89fdc6875165081faeb3656b9e83308bbbdc358da83e769e
|
|
BLAKE2b-256 checksum How to use checksums |
3cd8cff2b8fa756a5088ce1c201011633dab79329e4d180442f5dcb1a880f4c4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for qase-robotframework 7.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.