Merge "[Spec] Task and verification export"
This commit is contained in:
commit
91eee1de6e
104
doc/specs/in-progress/task_and_verification_export.rst
Normal file
104
doc/specs/in-progress/task_and_verification_export.rst
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
..
|
||||||
|
This work is licensed under a Creative Commons Attribution 3.0 Unported
|
||||||
|
License.
|
||||||
|
|
||||||
|
http://creativecommons.org/licenses/by/3.0/legalcode
|
||||||
|
|
||||||
|
..
|
||||||
|
This template should be in ReSTructured text. The filename in the git
|
||||||
|
repository should match the launchpad URL, for example a URL of
|
||||||
|
https://blueprints.launchpad.net/heat/+spec/awesome-thing should be named
|
||||||
|
awesome-thing.rst . Please do not delete any of the sections in this
|
||||||
|
template. If you have nothing to say for a whole section, just write: None
|
||||||
|
For help with syntax, see http://sphinx-doc.org/rest.html
|
||||||
|
To test out your formatting, see http://www.tele3.cz/jbar/rest/rest.html
|
||||||
|
|
||||||
|
|
||||||
|
====================================================
|
||||||
|
Export task and verifications into external services
|
||||||
|
====================================================
|
||||||
|
|
||||||
|
Currently Rally stores all information about executed tasks and verifications
|
||||||
|
in its database and it is also able to provide this data in JSON format or
|
||||||
|
in the form of HTML reports. There is a request for Rally to export this data
|
||||||
|
into external services (like test management system or Google Docs)
|
||||||
|
via its API.
|
||||||
|
|
||||||
|
Problem description
|
||||||
|
===================
|
||||||
|
|
||||||
|
There are many, including a lot of proprietary, test management systems
|
||||||
|
in the market available as SaaS and/or On-Premises, like TestRail, TestLink,
|
||||||
|
TestLodge etc, which objective is to manage, organize and track all testing
|
||||||
|
efforts.
|
||||||
|
|
||||||
|
Most of the systems provide an API for importing test data. The systems also
|
||||||
|
posess data model somewhat similar to Rally's one.
|
||||||
|
It usually includes (among others) models for project, test suite test case,
|
||||||
|
test plan and test execution results.
|
||||||
|
|
||||||
|
It is suggested to provide Rally users an ability to export information about
|
||||||
|
testing their environments into such test management systems in order
|
||||||
|
to integrate benchmarking via Rally into rest of their testing activities.
|
||||||
|
|
||||||
|
Since different test management systems have alike yet different API
|
||||||
|
for the purpose it is reasonable to implement this export functionality via
|
||||||
|
plugins.
|
||||||
|
|
||||||
|
Proposed change
|
||||||
|
===============
|
||||||
|
|
||||||
|
1. Implement a base class TaskExporter for an export plugin at
|
||||||
|
*rally/task/exporter.py*.
|
||||||
|
|
||||||
|
..code-block:: python
|
||||||
|
class TaskExporter(plugin.Plugin):
|
||||||
|
def export(self, task, connection_string):
|
||||||
|
...
|
||||||
|
|
||||||
|
2. Implement a CLI command of the form
|
||||||
|
|
||||||
|
..code-block:: shell
|
||||||
|
rally task export <UUID> <CONNECTION_STRING>
|
||||||
|
|
||||||
|
3. Implement a base class VerifyExporter for an export plugin at
|
||||||
|
*rally/verify/exporter.py*.
|
||||||
|
|
||||||
|
..code-block:: python
|
||||||
|
class VerifyExporter(plugin.Plugin):
|
||||||
|
def export(self, verification, connection_string):
|
||||||
|
...
|
||||||
|
|
||||||
|
4. Implement a CLI command of the form
|
||||||
|
|
||||||
|
..code-block:: shell
|
||||||
|
rally verify export <UUID> <CONNECTION_STRING>
|
||||||
|
|
||||||
|
Alternatives
|
||||||
|
------------
|
||||||
|
|
||||||
|
No way
|
||||||
|
|
||||||
|
|
||||||
|
Implementation
|
||||||
|
==============
|
||||||
|
|
||||||
|
Assignee(s)
|
||||||
|
-----------
|
||||||
|
|
||||||
|
Primary assignee:
|
||||||
|
TBD
|
||||||
|
|
||||||
|
Work Items
|
||||||
|
----------
|
||||||
|
|
||||||
|
- Implement plugin base class
|
||||||
|
|
||||||
|
- Implement CLI command
|
||||||
|
|
||||||
|
- Implement plugin for TestRail
|
||||||
|
|
||||||
|
Dependencies
|
||||||
|
============
|
||||||
|
|
||||||
|
None
|
Loading…
Reference in New Issue
Block a user