Skip to main content

Qase Robot Framework Plugin

Project description

Qase Robot Framework Listener

Publish results simple and easy.

How to integrate

pip install qase-robotframework

Usage

If you want to create a persistent link to Test Cases in Qase, you should add Qase test case IDs to robot framework tests. They should be added as a tags in form like Q-<case id without project code>. You can use upper and lower case to indicate the test case IDs. 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"

Configuration

Listener supports loading configuration both from environment variables and from tox.ini file.

ENV variables:

  • QASE_MODE - Define mode: testops to enable report
  • QASE_ENVIRONMENT - Environment ID for the run
  • QASE_DEBUG - If passed something - will enable debug logging for listener. Default: False
  • QASE_TESTOPS_MODE - You can switch between sync and async modes. Default is async
  • QASE_TESTOPS_API_TOKEN - API token to access Qase TestOps
  • QASE_TESTOPS_PROJECT - Project code from Qase TestOps
  • QASE_TESTOPS_PLAN_ID - Plan ID if you want to add results to existing run from Test Plan
  • QASE_TESTOPS_RUN_ID - Run ID if you want to add results to existing run
  • QASE_TESTOPS_RUN_TITLE - Set custom run name when no run ID is provided
  • QASE_TESTOPS_COMPLETE_RUN - Will complete run after all tests are finished. Default: False
  • QASE_TESTOPS_HOST - Define a host for Qase TestOps. Default: qase.io

Usage:

QASE_API_TOKEN=<API TOKEN> QASE_PROJECT=PRJCODE robot --listener qaseio.robotframework.Listener keyword_driven.robot data_driven.robot

Moving variables to tox.ini, example configuration:

[qase]
qase_testops_api_token=api_key
qase_testops_project=project_code
qase_testops_run_id=run_id
qase_testops_run_title=New Robot Framework Run
qase_debug=True
qase_testops_complete_run=True

Execution:

robot --listener qaseio.robotframework.Listener someTest.robot

Contribution

Install project locally:

python3 -m venv .venv
source .venv/bin/activate
pip install -e .[testing]

Install dev requirements:

pip install pre-commit
pre-commit install

Test project:

tox

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qase-robotframework-2.0.1.tar.gz (14.2 kB view hashes)

Uploaded Source

Built Distribution

qase_robotframework-2.0.1-py3-none-any.whl (14.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page