[英]How can i compare data output from robot framework by using python
這是我的機器人代碼
Database-Keywords-Test
connect to database using custom params cx_Oracle ${DB_CONNECT_STRING}
${queryResults}= Query Select * from QA_USER.SealTest_Security_A order by SECURITY_ID
Log ${queryResults}
${queryResults1}= Query Select * from QA_USER.SealTest_Security_B order by SECURITY_ID
Log ${queryResults1}
Robot Framework 是用 Python 編寫的,它提供了許多很好的切入點。
您必須圍繞要使用的設計決策(或確定您的團隊已經做出的設計決策)。
機器人原生解決方案
如果您系統中兩個表的結果是相同的,您也許可以直接使用內置的 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,即調用robot 作為主要入口點,可以使用Library 關鍵字導入Python 模塊。
機器人測試案例:
*** 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
Python調用Robot解決方案
如果你想讓python驅動Robot,你可以從Python訪問API https://robot-framework.readthedocs.io/en/latest/
以上是一些直接相關的存根,希望能讓您看到映射並開始工作。 使用該起點,我建議仔細閱讀文檔鏈接以進行后續步驟。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.