2016-04-18 52 views
0

我們已經使用python腳本(.py)自動化場景。我們想在Robot Framework中執行這些腳本。是否有任何選項可以在RF中執行Python腳本。如何在機器人框架中執行python腳本

任何人都可以在這裏建議我。

+0

難道這些腳本是你正在測試,或者是你想在腳本中作爲關鍵字使用的功能,還是你只是試圖執行腳本並捕獲標準輸出? –

+0

我想在機器人中執行Python腳本並捕獲標準輸出。你可以幫我嗎。 –

回答

3

您可以使用process library中的run_process關鍵字。它返回一個具有狀態碼stdout和stderr的對象。

例如,此運行腳本/tmp/helloworld.py:

# example.robot 
*** Settings *** 
| Library | Process 

*** Test Cases *** 
| Example of running a python script 
| | ${result}= | run process | python | /tmp/helloworld.py 
| | Should be equal as integers | ${result.rc} | 0 
| | Should be equal as strings | ${result.stdout} | hello, world 
+0

感謝您的回覆! 我在C:\ Python27 \ Lib \ Hello.py中打印「Hello world!」的python文件。 這是編寫機器人文件的正確的方式執行 *** ***設置圖書館 過程 *** ***變量$ {}標準輸出 ***測試用例*** TEST1 \t $ {}結果= \t運行過程\t蟒蛇\t C:\ Python27 \ LIB \ Hello.py \t \t應該是平等的\t $ {}標準輸出$ \t {} result.stdout蟒蛇您好! 這裏測試用例正在通過,但結果與我的python文件不匹配,因爲python文件(C:\ Python27 \ Lib \ Hello.py)應該返回「Hello world!」 –

+0

請您一次性驗證腳本。 –

+0

@KrantiKumar:我不知道你的意思。假設實際上有一個名爲「/tmp/helloworld.py」的文件,並且在stdout上實際打印出「hello,world」,這篇文章中的機器人測試就起作用了。 –

相關問題