我真的不确定我的设置有什么问题。最近添加了机器人测试,我们已经看到它们在另一台开发人员的OS X机器上成功运行。
我正在尝试在安装了Plone和Firefox的Ubuntu机器上运行相同的机器人测试。该套餐为https://github.com/collective/collective.academicprogrammes
我必须将plone.app.robotframework添加到我的develop.cfg文件的[test]部分。 这就是我的develop.cfg现在的样子:
[来源]
collective.academicprogrammes = git git@github.com:collective / collective.academicprogrammes.git
[扩建]
test-packages = collective.academicprogrammes [测试]
extends = buildout.cfg
extensions + = mr.developer
鸡蛋+ =
Products.DocFinderTab plone.reload collective.academicprogrammes
部分+ =
test diazotools zopeskel robot
always-checkout = force 来源=来源 自动结账= *
[测试]
recipe = zc.recipe.testrunner
defaults = [' - exit-with-status', '--auto-color',' - auto-progress']
eggs =
${buildout:eggs} ${buildout:test-packages}
[的ZopeSkel]
recipe = zc.recipe.egg
eggs =
ZopeSkel Paste PasteDeploy PasteScript zopeskel.diazotheme zopeskel.dexterity zest.releaser ${buildout:eggs}
[机器人]
recipe = zc.recipe.egg
eggs =
Pillow ${test:eggs} plone.app.robotframework
运行bin/buildout -c develop.cfg
以安装所有内容后
试图运行bin/test -t robot
我收到以下错误:
文件“parser.pxi”,第569行,in lxml.etree._ParserContext._handleParseResultDoc (src / lxml / lxml.etree.c:74567)文件“parser.pxi”,第650行, lxml.etree._handleParseResult(src / lxml / lxml.etree.c:75458)文件 “parser.pxi”,第590行,在lxml.etree._raiseParseError中 (SRC / LXML / lxml.etree.c:74791)
文件“lxml.etree.pyx”,第2756行,位于lxml.etree.fromstring (src / lxml / lxml.etree.c:54726)bash:意外令牌附近的语法错误
(' (precise)david@localhost:~/Plone/zeocluster$ File "parser.pxi", line 1571, in lxml.etree._parseMemoryDocument (src/lxml/lxml.etree.c:82792) bash: syntax error near unexpected token ... File "parser.pxi", line 1450, in lxml.etree._parseDoc (src/lxml/lxml.etree.c:81590) bash: syntax error near unexpected token
('
结束于:
AssertionError:安装失败:WebDriverException:消息:'不能 加载配置文件。配置文件目录:/ tmp / tmpqsX6Ky / webdriver-py-profilecopy Firefox输出:Gtk-Message:无法加载模块 “canberra-gtk-module”\ n *** LOG addons.xpi:startup \ n *** LOG addons.xpi:checkForChanges \ n *** LOG addons.xpi:没有变化 发现\ N *的 * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** \ N * 调用xpconnect包装的JSObject产生了这个错误: * \ n [例外...“\'[JavaScript错误:”this.updateDisplay不是函数“{file:”chrome://browser/content/search/search.xml“行: 调用方法时:}} [nsIBrowserSearchInitObserver :: onInitComplete]“nsresult:”0x80570021 (NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS)“位置:”JS框架:: resource://gre/components/nsSearchService.js :: onSuccess :: line 3257“数据: YES] \ N *的 * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** \ n'
答案 0 :(得分:3)
错误是双重的。一个问题与我安装了一个不包含所有依赖项的轻量级Linux操作系统有关。具体来说,我必须安装libcanberra。 为了在Ubuntu上执行此操作,我运行了以下命令'sudo apt-get install libcanberra-gtk-module'。这足以解决有关canberra-gtk-module的错误。
第二个问题与使用的Firefox版本有关。事实证明,Selenium 2.34与Firefox 27(我正在使用的浏览器)不兼容。 看到: http://selenium.googlecode.com/git/py/CHANGES
有两个选项,将Selenium升级到2.40.0
OR
针对Firefox 25运行机器人浏览器测试。
我选择使用Firefox 25并在运行测试时使用它。
有关此问题的相关信息,请访问:
http://seleniumsimplified.com/problems-running-webdriver-on-firefox-26/