Soy un partidario activo del Robot Framework. Ya escribí en Habré que se puede usar para resolver casi cualquier problema de automatización de pruebas, especialmente cuando el desarrollo se lleva a cabo en Python. En el mismo artículo, mencioné que la empresa usa Pytest en proyectos relacionados. Tenía que conocer esta herramienta bastante de cerca, así que ahora estoy listo para hacer una comparación completa con Robot Framework, por supuesto, desde mi campanario personal.
, , 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 - . , , .
: