Qase TestOps Robot Framework Reporter

Installation
pip install qase-robotframework
Upgrade from 2.x to 3.x
The new version 3.x of the Robot Framework reporter has breaking changes.
To migrate from versions 2.x, follow the upgrade guide.
Configuration
Qase Robot Framework Reporter is configured in multiple ways:
- using a config file
qase.config.json
- using environment variables
Environment variables override the values given in the config file.
Configuration options are described in the
configuration reference.
Example: qase.config.json
{
"mode": "testops",
"fallback": "report",
"debug": true,
"testops": {
"project": "YOUR_PROJECT_CODE",
"api": {
"token": "YOUR_API_TOKEN",
"host": "qase.io"
},
"run": {
"title": "Test run title"
},
"batch": {
"size": 100
}
},
"report": {
"driver": "local",
"connection": {
"local": {
"path": "./build/qase-report",
"format": "json"
}
}
},
"environment": "local"
}
Usage
Link tests with test cases in Qase TestOps
To link the automated tests with the test cases in Qase TestOps, use the tags in form like
Q-<case id without project code>
.
Example:
*** Test Cases ***
Push button
[Tags] q-2
Push button 1
Result should be 1
Push multiple buttons
[Tags] Q-3
Push button 1
Push button 2
Result should be 12
*** Test Cases *** Expression Expected
Addition 12 + 2 + 2 16
2 + -3 -1
[Tags] Q-7
Subtraction 12 - 2 - 2 8
2 - -3 5
[Tags] Q-8
Working with steps
Listener supports reporting steps results:
Example:
Quick Get A JSON Body Test ## Test case: "Quick Get A JSON Body Test"
[Tags] Q-3
${response}= GET https://jsonplaceholder.typicode.com/posts/1 ## 1-st step - "GET"
Should Be Equal As Strings 1 ${response.json()}[id] ## 2-nd step - "Should Be Equal As Strings"
Initializing the test case ## Test case: "Initializing the test case"
[Tags] q-4
Set To Dictionary ${info} field1=A sample string ## 1-st step - "Set To Dictionary"
Working with parameters
Listener supports reporting parameters:
Example:
*** Variables ***
${var1} 1
${var2} 1
${var3} 2
*** Test Cases ***
Simple test
[Arguments] ${var1} ${var2} ${var3}
[Tags] qase.params:[var1, var2]
Should Be Equal As Numbers ${var1} ${var2}
Should Be Equal As Numbers ${var3} ${var3}
Only var1
and var2
will be sent to Qase.
Execution:
robot --listener qase.robotframework.Listener someTest.robot