我在https://github.com/geb/geb-example-grails
使用示例项目出于某种原因,当我运行grails test-app functional:
时,它不会接受任何测试。它说......
|Loading Grails 2.3.1
|Configuring classpath
.
|Environment set to test
........................................................
|Tests PASSED - view reports in C:\Users\user\src\geb-example-grails\target\test-reports
没有浏览器打开(我习惯使用webdriver),当我查看target\test-reports\html\all.html
时,我得到...
我尝试用
执行grails test-app functional:
grails test-app -functional
grails test-app
似乎没有运行任何测试。我也将项目升级到grails 2.3.6,结果相同。我错误地运行了测试吗?还有其他人有这个问题吗?
更新
除了Windows 7计算机之外,我还能在Mac上重现此问题。当我在Mac上运行时......
grails test-app -Dwebdriver.chrome.driver=/Applications/Google\ Chrome.app/Contents/MacOS/chromedriver
然后没有运行测试,它报告所有测试都通过。 (与windows机器相同)
但是,当我通过
运行时grails test-app
测试已经开始,谷歌浏览器已启动,但没有导航(我怀疑我在Mac上的PATH
某处有一个过时的chromedriver。)
更新2
用...运行后
grails test-app -Dgeb.env=firefox
找到并执行测试。在使用最新的selenium(2.40.0,我熟悉的webdriver问题)更新BuildConfig.groovy
之前,不会发生任何诽谤。
考虑到这一点,我决定检查chromedriver是否安装得当。虽然我已将chromedriver.exe
放置在与谷歌浏览器相同的位置。我没有将该位置添加到我的PATH
。这样做之后......尤里卡!测试以100%通过的方式运行并执行!谢谢@spikeheap的建议!看起来测试不会运行,除非你的浏览器设置正确的webdriver(对我来说很奇怪,但没关系)。
答案 0 :(得分:1)
我无法重现该错误。使用2.3.1执行测试。你有ChromeDriver吗?如果不是,我希望看到一大堆错误......
您可以尝试grails test-app functional: -Dgeb.env=firefox
尝试使用FirefoxDriver。如果您安装了Firefox,则无需任何其他配置即可使用。
如果这对您没有任何帮助,请尝试grails test-app functional: PersonCRUDSpec
,这将明确尝试运行该测试。