我无法弄清楚为什么我的基于网络的黄瓜测试永远不会终止。所有步骤定义都通过,但浏览器永远不会在最后一步退出,因此我的脚本挂起。
我目前正在运行 cuke4duke (0.4.3)、Geb(0.5.1)、maven(2.2.1)、selenium-firefox-driver/selenium-chrome-driver (2.0a6 和 a7)
我已经在 Chrome 和 Firefox (3.6) / Windows XP 和 Ubuntu 中测试了我的脚本,但没有成功。
这是我的 Maven 构建的输出
[INFO] Scenario: Navigate from homepage # features/helppage.feature:7
[INFO] Given I am on the homepage # Helppage$_run_closure1@f93ee4
[INFO] When I click on the about page # Helppage$_run_closure2@1c87031
[INFO] Then the title should display "About Google" # Helppage$_run_closure3@1f784d7
[INFO]
[INFO] 1 scenario (1 passed)
[INFO] 3 steps (3 passed)
[INFO] 0m5.421s
HANGING HERE
环境groovy
import geb.Browser
import org.openqa.selenium.chrome.ChromeDriver;
this.metaClass.mixin(cuke4duke.GroovyDsl)
Before() {
new Browser(new ChromeDriver(),'http://www.google.com')
}
After() {
clearCookies()
}
帮助页面.groovy
this.metaClass.mixin(cuke4duke.GroovyDsl)
Given (~/I am on the homepage/) {
go('/')
}
When (~/I click on the about page/) {
go('/intl/en/about.html')
}
Then (~/the title should display "(.*)"/) { pageTitle ->
assert title == pageTitle
}
如果问题出在 webdriver 或 cuke4duke 发行版或其他任何地方,我无法确定。我也不确定如何在 Maven 构建中添加更多调试以找出问题所在。