This package allows the user to access many Polarion items like workitems, test run, plans and documents.
This package can, among others, read, modify and create:
- Workitems
- Test runs from templates
- Plans
- Documents
Work with attachments in workitems and test runs. Work with custom field in workitems and documents.
pip install polarion
Creating the Polarion client and getting workitems, test runs or plans:
from polarion import polarion
client = polarion.Polarion('http://example.com/polarion', 'user', 'password')
project = client.getProject('Python')
workitem = project.getWorkitem('PYTH-510')
run = project.getTestRun('SWQ-0001')
plan = project.getPlan('00002')
Modifying workitems:
workitem.setDescription('Some description..')
workitem.addComment('test comment', 'sent from Python')
workitem.addHyperlink('google.com', workitem.HyperlinkRoles.EXTERNAL_REF)
Or test run results:
run = project.getTestRun('SWQ-0001')
run.records[0].setResult(record.Record.ResultType.PASSED, ' Comment with test result')
Adding workitems to a plan:
plan.addToPlan(workitem)
plan.removeFromPlan(workitem)
More examples to be found in the quick start section of the documentation. Go to the documentation
This project uses the SOAP API of Polarion. This API exposes most of the user interactions you can do with Polarion like creating or editing workitems, plans and test runs. The API is divided in seven different services which you can find from your Polarion instance at the url http://domain.com/polarion/ws/services. Each of the services provides a WSDL file detailing the available functions. (Also available form you local instance at http://domain.com/polarion/ws/services/TrackerWebService?wsdl) For this project the TrackerWebService, PlanningWebService and TestManagementWebService are the most used ones.
In general the project attempts for the objects (like workitems) to behave like Python objects which you can modify and are saved in the background. Where the API provide operation to preform an action that API call is used, and the object is reloaded from polarion to reflect the changes locally.
The API does not allow access to the project administration.
The package uses; requests, urllib3 and zeep.
It is tested for Python version 3.7 through 3.12. Python 3.6 support has been dropped in 1.3.0.
- No way of knowing the test run possible statuses.
- Deleting work items used in documents does not remove the reference from the document.