2017-01-20 16 views
1

Использование watir, я написал сценарии для проверки нескольких ссылок, направляемых на нужную страницу, как показано ниже.Browser.back не работает

Links= ["Link", "Link1"] 

Links.each do |LinkValue|   
    @browser.link(:text => LinkValue).wait_until_present.click 
    fail unless @browser.text.include?(LinkValue) 
    @browser.back 
end 

То, что я пытаюсь это:

maintaining Linktext in an array 
iterating with each linktext 
verify 
navigate to the previous page to start verifying with next linktext. 

Но сценарий не работает. Он не выполняется после первого значения, а также не перемещается назад.

ответ

0

Следующая сумы работает для меня

require 'watir' 
browser = Watir::Browser.new(:firefox) # :chrome also work 
browser.goto 'https://www.google.com/' 
browser.link(text: 'Gmail').wait_until_present.click 
sleep(10) 
browser.back 
sleep(10) 
+0

Зачем спать до и после «спины»? – Gopal

+0

Я использую сон, чтобы проверить, правильно ли просматривается страница 'watir'. Тебе это не нужно. –

0

Вы звоните Kernel::Fail, который поднимет исключение, если условие не выполнено.

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

Вот надуманный «работает» пример (который только «работает», потому что текстовая ссылка существует на оба отправляемых и назначении страниц):

require 'watir' 

b = Watir::Browser.new :chrome 
b.goto "http://www.iana.org/domains/reserved" 

links = ["Overview", "Root Zone Management"] 

links.each do |link| 
    b.link(:text => link).click 
    fail unless b.text.include? link 
    b.back 
end 

b.close 

Некоторых наблюдения:

  • я бы не стал используйте fail здесь. Вы должны исследовать структуру тестирования, такую ​​как Minitest или rspec, которые имеют методы утверждения для проверки поведения приложения.
  • В рубине переменные (и методы и символы) должны быть в snake_case.

 Смежные вопросы

  • Нет связанных вопросов^_^