Мои тесты cuke4duke зависают и никогда не прекращаются

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

В настоящее время я использую 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

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, чтобы выяснить, что идет не так.


person swedstar    schedule 01.05.2011    source источник
comment
У меня сейчас похожие проблемы. Настройка: Cucumber / cuke4duke с webdriver (селен) в определениях шагов. Все веб-драйверы работают нормально (IE, HTMLUnit, firefox), но chromedriver зависает точно в той же точке, что и ваш пример, после завершения всех тестов. @swedstar: удалось ли вам решить эту проблему?   -  person Marco Tolk    schedule 06.07.2011


Ответы (3)


Я думаю, вам нужно вызвать quit() в браузере (вам, вероятно, потребуется сохранить его дескриптор в вашем Before() хуке).

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

person Bernie    schedule 30.03.2012

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

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

person Tarcio Saraiva    schedule 05.05.2011

Попробуйте обновиться до последней версии jRuby (1.6.0). Может быть связано с этой проблемой: Огурец 0.4.3 (cuke4duke) с проблемами java + maven gem

person prusswan    schedule 23.07.2011