在Plone上运行机器人测试时解决分析错误

时间:2014-03-05 15:51:54

标签: plone robotframework

我真的不确定我的设置有什么问题。最近添加了机器人测试,我们已经看到它们在另一台开发人员的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'

1 个答案:

答案 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/

http://support.mozilla.org/en-US/questions/986545