无法在pycharm中使用pabot运行并行机器人框架测试

时间:2017-09-14 10:34:07

标签: python selenium robotframework

所以,相当新的机器人框架。使用Pycharm,我创建了一个包含两个目录的测试套件。一个用于测试脚本,一个用于资源文件。使用时,测试都按顺序运行:

  

robot test_directory

  

pybot test_directory

我现在需要并行运行它们。 我使用以下方法找到并安装了pabot:

  

pip install -U robotframework-pabot

在Pycharm终端中,我运行以下命令:

  

pabot test_directory

我收到以下错误:

**

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

任何人都可以指出我做错了什么并指出了我正确的方向吗?

3 个答案:

答案 0 :(得分:2)

如错误消息中所述,它是无效的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

答案 1 :(得分:1)

所以您可以做的是,尝试以下命令

pabot --processes 2 test_directory.robot

它将创建2个并行运行的线程。

答案 2 :(得分:0)

似乎您正在RobotRemoteServer上执行旧版本。 请执行pip install robotremoteserver==1.1

相关问题