无法在 pycharm 中使用 pabot 运行并行机器人框架测试
Posted
技术标签:
【中文标题】无法在 pycharm 中使用 pabot 运行并行机器人框架测试【英文标题】:Unable to run parallel robotframework tests using pabot in pycharm 【发布时间】:2018-02-23 07:13:16 【问题描述】:所以,对于机器人框架来说是相当新的。使用 Pycharm,我创建了一个包含两个目录的测试套件。一个用于测试脚本,一个用于资源文件。使用时,测试都按顺序运行良好:
机器人测试目录
或
pybot 测试目录
我现在需要并行运行它们。 我使用以下方法找到并安装了 pabot:
pip install -U robotframework-pabot
在 Pycharm 终端中,我运行以下命令:
pabot 测试目录
我收到以下错误:
**
Traceback (most recent call last):
File "C:\Python\lib\runpy.py", line 183, in _run_module_as_main
mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
File "C:\Python\lib\runpy.py", line 109, in _get_module_details
__import__(pkg_name)
File "C:\Python\lib\site-packages\pabot\__init__.py", line 1, in <module>
from .PabotLib import PabotLib
File "C:\Python\lib\site-packages\pabot\PabotLib.py", line 22, in <module>
from robotremoteserver import RobotRemoteServer
File "C:\Python\lib\site-packages\robotremoteserver.py", line 103
except (OSError, select.error), err:
^
SyntaxError: invalid syntax
**
我也试过了:
pabot test_directory *.robot
pabot test.robot
pabot test_directory test.robot
我正在使用 RF 3.0.2、Python 3.6
谁能指出我做错了什么并指出我正确的方向?
【问题讨论】:
我不确定,但似乎 pabot 不支持 python3。或许你应该问问 pybot 开发者,或者干脆自己去修改声明。 【参考方案1】:如错误消息中所述,它是无效的 Python 语法。原因是,Pabot 与 Robot Framework 生态系统的许多其他模块和库一样,尚未升级为与 Python 3 兼容。
要修复此特定错误,您需要进行更改:
except (OSError, select.error), err:
到这里:
except (OSError, select.error) as err:
虽然您应该注意该模块可能有更多的 Python 3 不兼容性,如果您不是绝对需要使用 Python 3,您可能需要考虑使用 Python 2.7.x
如果返回 Python 2.7 不是一个选项,您可以考虑修复 Pabot 的 Python 3 不兼容问题并在 Github repository 上提交拉取请求
【讨论】:
【参考方案2】:您似乎在 RobotRemoteServer 上执行旧版本。
请做pip install robotremoteserver==1.1
【讨论】:
【参考方案3】:所以你可以做的是,试试下面的命令
pabot --processes 2 test_directory.robot
它将创建 2 个并行运行的线程。
【讨论】:
以上是关于无法在 pycharm 中使用 pabot 运行并行机器人框架测试的主要内容,如果未能解决你的问题,请参考以下文章