diff options
author | iddqd <iddqd@yandex-team.com> | 2024-05-13 17:19:30 +0300 |
---|---|---|
committer | iddqd <iddqd@yandex-team.com> | 2024-05-13 17:28:44 +0300 |
commit | 84d127b9b7e96ba4352e3f5ddc9222aee9a66053 (patch) | |
tree | 2ebb2689abf65e68dfe92a3ca9b161b4b6ae183f /contrib/python/allure-python-commons/README.md | |
parent | b7deb7f0b71db7419781d1b0357dfa443ccc3ff1 (diff) | |
download | ydb-84d127b9b7e96ba4352e3f5ddc9222aee9a66053.tar.gz |
Add allure support to ydb github export
d6cba27d09fb5e50a99c36070a6a3545c8393ea1
Diffstat (limited to 'contrib/python/allure-python-commons/README.md')
-rw-r--r-- | contrib/python/allure-python-commons/README.md | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/contrib/python/allure-python-commons/README.md b/contrib/python/allure-python-commons/README.md new file mode 100644 index 0000000000..bde7b47d34 --- /dev/null +++ b/contrib/python/allure-python-commons/README.md @@ -0,0 +1,112 @@ +## Allure Common API + +[](https://pypi.python.org/pypi/allure-python-commons) +[](https://pypi.python.org/pypi/allure-python-commons) + +> The package contains classes and functions for users of Allure Report. It can +> be used to enhance reports using an existing Allure adapter or to create new +> adapters. + +[<img src="https://allurereport.org/public/img/allure-report.svg" height="85px" alt="Allure Report logo" align="right" />](https://allurereport.org "Allure Report") + +- Learn more about Allure Report at [https://allurereport.org](https://allurereport.org) +- 📚 [Documentation](https://allurereport.org/docs/) – discover official documentation for Allure Report +- ❓ [Questions and Support](https://github.com/orgs/allure-framework/discussions/categories/questions-support) – get help from the team and community +- 📢 [Official announcements](https://github.com/orgs/allure-framework/discussions/categories/announcements) – stay updated with our latest news and updates +- 💬 [General Discussion](https://github.com/orgs/allure-framework/discussions/categories/general-discussion) – engage in casual conversations, share insights and ideas with the community +- 🖥️ [Live Demo](https://demo.allurereport.org/) — explore a live example of Allure Report in action + +--- + +## User's API + +Install an adapter that suits your test framework. You can then add more +information to the report by using functions from the `allure` module. + +### Decorators API + +Use these functions as decorators of your own functions, e.g.: + +```python +import allure + +@allure.title("My test") +def test_fn(): + pass +``` + +The full list of decorators: + + - `allure.title` + - `allure.description` + - `allure.description_html` + - `allure.label` + - `allure.severity` + - `allure.epic` + - `allure.feature` + - `allure.story` + - `allure.suite` + - `allure.parent_suite` + - `allure.sub_suite` + - `allure.tag` + - `allure.id` + - `allure.manual` + - `allure.link` + - `allure.issue` + - `allure.testcase` + - `allure.step` + +Refer to the adapter's documentation for the information about what decorators +are supported and what functions they can be applied to. + +### Runtime API + +Most of the functions of Runtime API can be accessed via `allure.dynamic.*`. +Call them at runtime from your code. + +The full list includes: + + - `allure.dynamic.title` + - `allure.dynamic.description` + - `allure.dynamic.description_html` + - `allure.dynamic.label` + - `allure.dynamic.severity` + - `allure.dynamic.epic` + - `allure.dynamic.feature` + - `allure.dynamic.story` + - `allure.dynamic.suite` + - `allure.dynamic.parent_suite` + - `allure.dynamic.sub_suite` + - `allure.dynamic.tag` + - `allure.dynamic.id` + - `allure.dynamic.manual` + - `allure.dynamic.link` + - `allure.dynamic.issue` + - `allure.dynamic.testcase` + - `allure.dynamic.parameter` + - `allure.attach` + - `allure.attach.file` + - `allure.step` + +Refer to the adapter's documentation for the information about what functions +are supported and where you can use them. + +## Adapter API + +You may use `allure-pytest-commons` to build your own Allure adapter. The key +elements of the corresponding API are: + + - `allure_python_commons.model2`: the object model of Allure Report. + - `allure_python_commons.logger`: classes that are used to emit Allure Report objects (tests, containers, attachments): + - `AllureFileLogger`: emits to the file system. + - `AllureMemoryLogger`: collects the objects in memory. Useful for + testing. + - `allure_python_commons.lifecycle.AllureLifecycle`: an implementation of + Allure lifecycle that doesn't isolate the state between threads. + - `allure_python_commons.reporter.AllureReporter`: an implementation of + Allure lifecycle that supports some multithreaded scenarios. + +A new version of the API is likely to be released in the future as we need +a decent support for multithreaded and async-based concurrency (see +[here](https://github.com/allure-framework/allure-python/issues/697) and +[here](https://github.com/allure-framework/allure-python/issues/720)). |