Есть ли разница между Watir и Watir-webdriver для обработки xpath? - PullRequest
2 голосов
/ 20 сентября 2011

Ниже приведен HTML-код с веб-страницы, которую я пытаюсь автоматизировать. Когда я использую Watir, он находит элемент правильно, но не с помощью watir-webdriver.

  <td width="87">
  <input type="image" style="height: 34px; width: 83px; border-width: 0px;" src="/test/test/img/Order-Online-Form_18.gif" id="order1_Next1" name="$Next1">
                </td>

Я использую следующий код:

require 'rubygems'
require 'watir'
browser = watir::Browser.new
browser.goto 'test.com'
test = @browser.td(:xpath,"//input[@id='order1_Next1']").exists?
puts test

Когда я использую watir, он возвращает true, но если я использую watir-webdriver, он возвращает false. Можете ли вы, ребята, помочь мне, почему watir-webdriver не распознает xpath

Спасибо

1 Ответ

5 голосов
/ 20 сентября 2011

Вы пытаетесь найти 'td', когда ищете 'кнопку'.

И использование селектора XPath почти наверняка является неправильным способом найти этот элемент.

Вам гораздо лучше использовать тип элемента кнопки с атрибутом id:

require 'watir-webdriver'
b = Watir::Browser.start 'http://dl.dropbox.com/u/18859962/qageeks.html'
b.button(:id => 'order1_Next1').exists? # => true 
b.button(:xpath,"//input[@id='order1_Next1']").exists? # => true 

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

...