从 python 脚本执行机器人框架文件

Execute Robot Framework file from python script

from subprocess import call
import os

call(['robot '+os.getcwd()+'\aaa.robot'])

file_dir: D:/aaa/test/aaa.机器人

现在在同一目录中的脚本

Output:
Traceback (most recent call last):
  File "__init.py", line 7, in <module>
    call(['robot '+os.getcwd()+'\aaa.robot'])
  File "C:\Python27\lib\subprocess.py", line 522, in call
    return Popen(*popenargs, **kwargs).wait()
  File "C:\Python27\lib\subprocess.py", line 710, in __init_
    errread, errwrite)
  File "C:\Python27\lib\subprocess.py", line 958, in _execut
    startupinfo)
WindowsError: [Error 2] Nie mo┐na odnalečŠ okreťlonego pliku

我就是受不了。我不明白为什么在 python 中调整任何东西都如此复杂:(

我想要与此行相同的结果(直接写入 cmd):

/>robot aaa.robot

subprocess 需要一个列表,但您输入的是字符串 ('robot '+os.getcwd()+'\aaa.robot')。

尝试:

call(['C:/Python27/python.exe', '-m', 'robot', 'D:/aaa/test/aaa.robot'])

call(['C:/Python27/Scripts/robot.bat', 'D:/aaa/test/aaa.robot'])

这是另一种方式

import robot

logFile = open('mylog.txt', 'w') 
robot.run("tmp.robot",stdout=logFile)