因此,我正在从事一个robotframework测试项目,目标是并行运行多个测试套件。为此,选择了帕博特作为解决方案。我正在努力实施,但收效甚微。
我的问题是:在安装Pabot之后(我可以说是通过克隆项目和运行"setup.py安装“来完成的,而不是使用pip,因为我背后的公司代理已经证明是我无法克服的障碍),于是我在项目树中创建了一个新目录,将一些套件移到那里,然后运行:
pabot --进程2-outputdir pabot_results Login*.robot
这样做会产生以下错误消息:
2018-10-10 10:27:30.449000 PID:9676执行Suites.LoginAdmin
2018年-10-10 10:27:30.449000 PID:400执行Suites.LoginUser
2018年-10-10 10:27:30.777000 PID:400失败Suites.LoginUser
2018年-10-10 10:27:30.777000 PID:9676失败Suites.LoginAdmin
警告:"pabot_results\pabot_results“输出中没有输出文件:读取XML源'‘失败:无效模式('rb')或文件名错误
试着--帮助获取使用信息。运行时间:0分0.578秒
在检查生成的stderr文件时,我收到以下消息:
追溯(最近一次调用):文件"C:\Python27\Lib\site-packages\robotframework-3.1a2.dev1-py2.7.egg\robot\running\runner.py",第22行,in from .context import EXECUTION_CONTEXTS ValueError:尝试在非包中进行相对导入
显然,这与runner.py脚本中的一些东西有关,如果我没有弄错的话,这与robotframework的安装有关。由于手动修改脚本在我看来并不是最佳的解决方案,我的问题是,我在这里遗漏了什么?我在做这件事的时候忘了做什么吗?或者这是版本之间的兼容性问题吗?
该项目使用Maven作为管理依赖关系的工具。我正在运行的版本是3.5.4。我使用的是Windows 10,64位系统;有Python2.7.14和机器人框架3.1a2.dev1。Pabot版本是0.44。显然,我将C:\Python27 27和C:\Python27 27\脚本添加到PATH环境变量中。
编辑:我也使用robotframework-maven-plugin版本1.4.0.8,如果这恰好相关的话。编辑2:以文本格式添加错误消息。
发布于 2018-10-16 11:15:28
万一将来有人偶然发现了这个问题:
由于我不能使用pip,而且我尝试了很多最终使事情变得更加不稳定的解决方案,所以我最终保存了我的项目,并从我的系统中删除了所有与Python相关的东西,这样我就可以从头安装所有的东西了。在Windows 10,64位系统中,我使用了:
我可能要补充的是,当以我前面描述的方式安装Selenium2Library时,它最终会尝试从pip存储库下载一些东西--如果您有一个代理,就会给您带来麻烦。我通过浏览https://pypi.org/simple/selenium/,手动下载2.53.6 .tar.gz文件,然后提取它并在命令行上运行setup.py安装来解决这个问题。
PS:但是,理想情况下,任何人都应该能够使用命令行(--proxy http://user:password@server:port)中的代理设置来获取pip,然后使用它;然而,由于某些原因,可能与我不想浪费时间的网络安全配置有关,这在我的情况下是行不通的。
发布于 2018-10-10 14:23:04
我相信,在我的机器上设置并行执行时,我也遇到过类似的问题。首先,我要确认pabot是使用pip show robotframework-pabot
安装的。
然后,您应该使用-d
定义结果要到的目录。然后,我将-o
的名称修改为Output.xml,以便于识别。
这是我使用的代码的副本。以最佳方式运行8个进程。
pabot --processes 8 -d results -o Output.xml Tests
发布于 2018-10-13 15:31:11
似乎您在机器人框架的预发布版本(3.1a2.dev1)中偶然发现了一个bug。请安装机器人框架的发布版本。例如3.0.4。
https://stackoverflow.com/questions/52735911
复制相似问题