Я хотел бы узнать мнение других, у которых больше опыта в написании определений шагов по огурцу.Моим первоначальным намерением было проверить, присутствовала ли конкретная ссылка в одном сценарии, и убедиться, что ее нет в другом сценарии.
Итак, у меня есть два следующих шага.По своей наивности я думал, что смогу использовать '! Find_link (...)'.
В конце я решил использовать исключения.Я хотел бы получить обратную связь по двум аспектам: 1. подход, который я использовал при использовании исключений внутри step_definition 2. имеет ли смысл ожидать явного поиска ссылок на отображаемой странице?
КакЯ закончил работу вчера вечером, я не мог не подумать: «Почему я просто не использовал: я не должен видеть« Зарегистрироваться »?»и этим утром меня осенило, что «Зарегистрироваться» можно включить в абзац где-то на странице.
Вот шаги, спасибо заранее ...
Then /^I should see link: ?"([^"]*)"$/ do |link|
find_link("#{link}")
end
Then /^I should not see link: ?"([^"]*)"$/ do |link|
# !find_link("#{link}") - commented out because it won't fail if link is present
begin
find_link("#{link}")
raise FindException
rescue Capybara::ElementNotFound
end
end