Robot Framework написан на Python, что дает множество хороших точек входа.
Вы должны принять проектное решение (или определить проектное решение, уже принятое вашей командой), чтобы использовать его.
Робот нативное решение
Если результаты двух таблиц в вашей системе должны быть идентичными, вы можете просто использовать встроенное ключевое слово Framework Robot напрямую и вообще не вызывать Python.
*** Settings ***
Documentation Exercise database keywords (Robot-only).
Library Collections
Library # <Database library implied above>
*** Test Cases ***
User Settings Test
[Documentation] User details db comparison (Database-Keywords-Test)
${queryResultsA}= Query Select * from QA_USER.SealTest_Security_A order by SECURITY_ID
${queryResultsB}= Query Select * from QA_USER.SealTest_Security_B order by SECURITY_ID
Lists Should Be Equal ${queryResultsA} ${queryResultsB}
Робот, вызывающий решение Python
Если вы хотите, чтобы Robot управлял Python, т.е. вы вызываете робота в качестве основной точки входа, вы можете импортировать модули Python, используя ключевое слово Library.
Контрольный пример робота:
*** Settings ***
Documentation Exercise database keywords (call out to Python).
Library userManagement
Library # <Database library implied above>
*** Test Cases ***
User Settings Test
[Documentation] User details db comparison (Database-Keywords-Test)
${queryResultsA}= Query Select * from QA_USER.SealTest_Security_A order by SECURITY_ID
${queryResultsB}= Query Select * from QA_USER.SealTest_Security_B order by SECURITY_ID
${diff} = Compare Users ${userResultsA} ${userResultsB}
Should Be Empty ${diff}
Библиотека Python userManagement.py:
class UserManagement:
ROBOT_LIBRARY_SCOPE = 'TEST SUITE'
def compareUsers(self,userResultsA,userResultsB):
# diff implementation depends on the structure of user results
# which are not shared in the question, but will be related to the
# database library you are using, perhaps a list of
# rows or dictionaries
...
return diff
http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#creating-test-library-class-or-module
Решение Python для вызова робота
Если вы хотите, чтобы Python управлял роботом, вы можете получить доступ к API из Python
https://robot -framework.readthedocs.io / ен / последний /
Выше приведены некоторые прямо связанные заглушки, которые, надеюсь, позволят вам увидеть карту и оторваться от земли. Используя эту отправную точку, я предлагаю внимательно изучить ссылки на документацию для следующих шагов.