I am a strong supporter of the Robot Framework. I already wrote on HabrΓ© that it can be used to solve almost any test automation problem, especially when development is in Python. In the same article, I mentioned that the company uses Pytest on related projects. I had to get to know this tool quite closely, so now I am ready to make a full-fledged comparison with the Robot Framework, of course, from my personal bell tower.
, , jUnit Robot Framework Java. , Robot Framework ( Python) . jUnit Python ( Pytest) Robot Framework .
?
Pytest
, Pytest - xUnit Python. jUnit nUnit ( Java .NET ), Pytest - , , -. xUnit- - , . .
Pytest, xUnit-, . Allure. , , . , Pytest , Allure - , - .
Robot Framework
Pytest, Robot Framework - domain specific language (DSL) - , . Python, . Python , Robot Framework. , ( , ), .
Robot Framework , . , . Cucumber Java. Robot Framework ( ), .. , - .
, . Slack, Robot Framework . . Robot Framework.
Robot Framework
Pytest xUnit - test. , test. .
, Pytest , -, , , . Pytest -, , .
, , ββ , XXI - -.
Robot Framework -. Keywords, . , . , Robot Framework , keywords, -. , (β , , , -β). , , . , , . , .
Suite setup
, - (-) , , , . Robot Framework suite setup, . suite teardown, , - (test setup test teardown). , .
xUnit , suite setup, Pytest scope=βclassβ
.
Pytest - ( suite setup - .. ). , . scope=βclassβ
(.. suite setup), , suite setup -. , , , - . - , Robot Framework, suite setup .
Pytest , . . - Python, , (, self.__class__.test_id = 2
). , - .
, Pytest Allure. . - , Allure , . suite setup. . , .
, xUnit .
Pytest+Allure Robot Framework . , - Robot , . , . , , API . , , . Pytest , , Robot Framework.
Robot Framework . , .
keyword- keyword-. , keyword, API ID, keyword, API ( , API - ID ).
, : β β. β β - keyword-, β β - keyword, API . β β, β β - keyword.
. keyword β β β β, (β β).
Robot Framework . , , , , , . . , Jira , . , , , ββ , . , .
Pytest , . - , . , , .
, Allure . , , Pytest+Allure Robot Framework . , Pytest+Allure DSL. , - , Pytest Allure .
Pytest
Pytest. .
. , Robot Framework, . , Pytest.
, , . , , . , ( ).
Pytest
, Robot Framework - Pytest - . Robot Framework 10 10- , , . Pytest .
. , API , (, 7 , - 10). . , - 70 ββ ( pair-wise). product itertools ( ) -, 70 , API exhaustive testing. .
Robot Framework . -, , 70 . .
Robot Framework - . , , .
: