2016-04-18 55 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”,这篇文章中的机器人测试就起作用了。 –

相关问题