1+ *** Settings ***
2+ Library ./library/run.py
3+ Library ./library/test.py
4+
5+ *** Variables ***
6+ @{TC_OUTSIDE_STEP__LIBRARY }
7+ ... from external import passed_outside_step, failed_outside_step
8+ ...
9+ ... def step_contains_passed_outside_step(): passed_outside_step()
10+ ...
11+ ... def step_contains_failed_outside_step(): failed_outside_step()
12+
13+
14+ @{TC_OUTSIDE_STEP__EXTERNAL_PY }
15+ ... import allure
16+ ...
17+ ... @allure.step("Passed Outside Step")
18+ ... def passed_outside_step(): pass
19+ ...
20+ ... @allure.step("Failed Outside Step")
21+ ... def failed_outside_step(): assert False, "Hello there"
22+
23+ ${TC_PASSED_OUTSIDE_STEP } | *Settings* | |\n
24+ ... | Library | ./helper.py |\n
25+ ... | | |\n
26+ ... | *TestCase* | |\n
27+ ... | Demo Test Case With Passed Outside Step | |\n
28+ ... | | Step Contains Passed Outside Step |\n
29+
30+ ${TC_FAILED_OUTSIDE_STEP } | *Settings* | |\n
31+ ... | Library | ./helper.py |\n
32+ ... | | |\n
33+ ... | *TestCase* | |\n
34+ ... | Demo Test Case With Failed Outside Step | |\n
35+ ... | | Step Contains Failed Outside Step |\n
36+
37+ *** Test Cases ***
38+ Test Case With Passed Outside Step
39+ ${tmp_dir } = Make Temp Dir
40+ ${test_case_dir } = Make Dir ${tmp_dir } test
41+ Make File ${test_case_dir } helper.py ${TC_OUTSIDE_STEP__LIBRARY }
42+ Make File ${test_case_dir } external.py ${TC_OUTSIDE_STEP__EXTERNAL_PY }
43+ ${test_case } = Make Test Case ${test_case_dir } step.robot ${TC_PASSED_OUTSIDE_STEP }
44+ ${allure_report } = Robot Run With Allure ${tmp_dir } ${test_case }
45+ ${tc_matcher } = Should Has Test Case ${allure_report } Demo Test Case With Passed Outside Step
46+ ${step_matcher } = Should Has Step ${allure_report } ${tc_matcher } helper.Step Contains Passed Outside Step
47+ ${outside_step_matcher } = Should Has Step ${allure_report } ${step_matcher } Passed Outside Step
48+ Should Has Status ${allure_report } ${outside_step_matcher } passed
49+
50+ Test Case With Failed Outside Step
51+ ${tmp_dir } = Make Temp Dir
52+ ${test_case_dir } = Make Dir ${tmp_dir } test
53+ Make File ${test_case_dir } helper.py ${TC_OUTSIDE_STEP__LIBRARY }
54+ Make File ${test_case_dir } external.py ${TC_OUTSIDE_STEP__EXTERNAL_PY }
55+ ${test_case } = Make Test Case ${test_case_dir } step.robot ${TC_FAILED_OUTSIDE_STEP }
56+ ${allure_report } = Robot Run With Allure ${tmp_dir } ${test_case }
57+ ${tc_matcher } = Should Has Test Case ${allure_report } Demo Test Case With Failed Outside Step
58+ Should Has Status ${allure_report } ${tc_matcher } failed
59+ ${step_matcher } = Should Has Step ${allure_report } ${tc_matcher } helper.Step Contains Failed Outside Step
60+ ${outside_step_matcher } = Should Has Step ${allure_report } ${step_matcher } Failed Outside Step
61+ Should Has Status ${allure_report } ${outside_step_matcher } failed
0 commit comments