Cucumber, метод, который будет вызываться всегда? Selenium-вебдрайвер.

Я пишу тесты, используя веб-драйвер селена с огурцом. Веб-страница во многом основана на ajax. Что я хочу сделать, так это то, что всякий раз, когда огурец вызывает метод, он должен ВСЕГДА вызывать какой-то другой метод.

Итак, скажем, в моем файле функций у меня есть:

Когда я говорю привет

который вызывает метод

скажи привет()

после этого я хочу

ждатьForAjax()

быть вызванным.

Как я могу это сделать?


person Koray Tugay    schedule 30.01.2013    source источник
comment
Как насчет использования Capybara? Он содержит автоожидание   -  person Andrei Botalov    schedule 30.01.2013
comment
@AndreyBotalov Ожидание было просто примером .. Это может быть что-то вроде logText .. сделайте снимок экрана ..   -  person Koray Tugay    schedule 31.01.2013
comment
Что именно вы хотите? Я не понимаю вашего вопроса. Что находится в файле .feature?   -  person Andrei Botalov    schedule 31.01.2013
comment
скажем, у меня есть метод с именем logWhatHappened().. который печатает что-то на консоли.. Например, CurrentTime... чтобы я мог знать, когда именно вызывается этот метод.. Я хочу вызывать этот метод каждый раз, когда огурец что-то вызывает.   -  person Koray Tugay    schedule 31.01.2013
comment
Вы хотите вызывать этот метод после каждого шага огурца или после каждого вызова sayHello?   -  person Andrei Botalov    schedule 31.01.2013
comment
После каждого шага огурца.   -  person Koray Tugay    schedule 31.01.2013


Ответы (1)


Если вы хотите вызывать этот метод после каждого шага Cucumber, вы можете использовать хук AfterStep:

AfterStep do |scenario|
  # Do something after each step.
end
person Andrei Botalov    schedule 31.01.2013
comment
Спасибо, а где мне поставить эти 3 строчки? - person Koray Tugay; 31.01.2013
comment
@KorayTugay до env.rb - person Andrei Botalov; 31.01.2013
comment
что такое env.rb? Я использую Java. - person Koray Tugay; 31.01.2013
comment
@KorayTugay Я этого не знал. Когда кто-то говорит огурец, я думаю о огурце-рубине. Насколько я знаю, Cucumber-JVM не имеет AfterStep, см. это обсуждение - person Andrei Botalov; 31.01.2013