2011-05-01 4 views
0

Я не могу понять, почему мои тесты на огурец в Интернете никогда не заканчиваются. Все определения шага проходят, но браузер не выходит на последний шаг, поэтому мой скрипт висит.Мои тесты cuke4duke зависают и никогда не заканчиваются

Я в настоящее время работаю cuke4duke (0.4.3), Геб (0.5.1), специалист (2.2.1), селен светлячок-водитель/Селен-хром-драйвер (2.0a6 и a7)

Я протестировал свои скрипты в Chrome и Firefox (3.6)/Windows XP и Ubuntu без каких-либо успехов.

Вот выход из моего мавена построить

[INFO] Scenario: Navigate from homepage    # features/helppage.feature:7 
[INFO]  Given I am on the homepage     # [email protected] 
[INFO]  When I click on the about page    # [email protected] 
[INFO]  Then the title should display "About Google" # [email protected] 
[INFO] 
[INFO] 1 scenario (1 passed) 
[INFO] 3 steps (3 passed) 
[INFO] 0m5.421s 
HANGING HERE 

Env.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() 
} 

helppage.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 build, чтобы узнать, что происходит не так.

+0

У меня сейчас схожие проблемы. Настройка: огурец/cuke4duke с webdriver (селен) в определениях шагов. Все webdrivers работают нормально (IE, HTMLUnit, firefox), но хромидратор висит точно в том же месте, что и ваш пример, после завершения всех тестов. @swedstar: Вы сделали какой-то прогресс в этой проблеме? –

ответ

0

Вы пробовали запустить его без cuke4duke?

Я нашел cuke4duke довольно интересным, но решил даже отбросить JRuby (не уверен, что вы это используете) и пойти с прямой рубиновой установкой, которая быстрее и надежнее.

1

Мне кажется, вам нужно позвонить quit() в Браузер (вам, вероятно, нужно будет сэкономить ручку на вашем крюке Before()).

У меня нет времени проверить это точно - мы перешли от cuke4duke к огурцу-groovy, но я думаю, что это проблема Geb Browser, которую вы видите здесь.