From 49f53b8360f905c1c862d422f1d43aed63397123 Mon Sep 17 00:00:00 2001 From: Sergei Morozov Date: Wed, 20 Feb 2019 16:46:52 +0500 Subject: [PATCH 1/2] add support for skipped robot tests --- allure-robotframework/src/listener/robot_listener.py | 4 +++- allure-robotframework/src/listener/types.py | 1 + allure-robotframework/src/listener/utils.py | 8 ++++++-- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/allure-robotframework/src/listener/robot_listener.py b/allure-robotframework/src/listener/robot_listener.py index b6820772..34ec5877 100644 --- a/allure-robotframework/src/listener/robot_listener.py +++ b/allure-robotframework/src/listener/robot_listener.py @@ -14,7 +14,7 @@ from allure_commons.utils import platform_label from allure_robotframework import utils from allure_robotframework.allure_listener import AllureListener -from allure_robotframework.types import RobotKeywordType, RobotLogLevel +from allure_robotframework.types import RobotKeywordType, RobotLogLevel, RobotStatus from allure_robotframework.utils import allure_labels, allure_links, allure_tags from robot.libraries.BuiltIn import BuiltIn @@ -116,6 +116,8 @@ def start_new_test(self, name, attributes): def stop_current_test(self, name, attributes): uuid = self.stack.pop() test = self.reporter.get_test(uuid) + if 'skipped' in [tag.lower() for tag in attributes['tags']]: + attributes['status'] = RobotStatus.SKIPPED test.status = utils.get_allure_status(attributes.get('status')) test.labels.extend(utils.get_allure_suites(attributes.get('longname'))) diff --git a/allure-robotframework/src/listener/types.py b/allure-robotframework/src/listener/types.py index 888dfb52..5d05f1c0 100644 --- a/allure-robotframework/src/listener/types.py +++ b/allure-robotframework/src/listener/types.py @@ -1,6 +1,7 @@ class RobotStatus(object): FAILED = 'FAIL' PASSED = 'PASS' + SKIPPED = 'SKIP' class RobotKeywordType(object): diff --git a/allure-robotframework/src/listener/utils.py b/allure-robotframework/src/listener/utils.py index de64a6d0..942c03ef 100644 --- a/allure-robotframework/src/listener/utils.py +++ b/allure-robotframework/src/listener/utils.py @@ -6,8 +6,12 @@ def get_allure_status(status): - return Status.PASSED if status == RobotStatus.PASSED else Status.FAILED - + if status == RobotStatus.PASSED: + return Status.PASSED + elif status == RobotStatus.SKIPPED: + return Status.SKIPPED + else: + return Status.FAILED def get_allure_parameters(parameters): return [Parameter(name="arg{}".format(i + 1), value=param) for i, param in enumerate(parameters)] From 70e45f7c5111b1b2f0a0dfc0b85024e5d80657cf Mon Sep 17 00:00:00 2001 From: Sergey Khomutinin Date: Sun, 16 Jun 2019 17:21:39 +0500 Subject: [PATCH 2/2] pep8 fix --- allure-robotframework/src/listener/utils.py | 1 + 1 file changed, 1 insertion(+) diff --git a/allure-robotframework/src/listener/utils.py b/allure-robotframework/src/listener/utils.py index 942c03ef..02be3c31 100644 --- a/allure-robotframework/src/listener/utils.py +++ b/allure-robotframework/src/listener/utils.py @@ -13,6 +13,7 @@ def get_allure_status(status): else: return Status.FAILED + def get_allure_parameters(parameters): return [Parameter(name="arg{}".format(i + 1), value=param) for i, param in enumerate(parameters)]