Селен Тестирование - PullRequest
       20

Селен Тестирование

1 голос
/ 05 мая 2010

Я хочу получить кучу dom-объектов с xpath и пройтись по ним, чтобы проверить, содержит ли они указанный текст, возможно ли это в Selenium IDE или rc? Perl - мой любимый язык

XPath будет что-то вроде = // XPath TBODY [@ класс = 'таблицы данных'] / тр / тд / дел [@ класс = 'таблицы пункт']

Это вернет все элементы строки в таблице, но мне нужно проверить каждый div, если он содержит указанную текстовую строку. Возможно ли это с помощью Selenium?

С наилучшими пожеланиями

Ответы [ 2 ]

1 голос
/ 05 мая 2010

Модуль WWW::Selenium идеально подходит для ваших нужд.

От старого ответа к другому вопросу:

Поддерживает доступ к элементам через элементы xpath, идентификаторы таблиц, текст (соответствие регулярным выражениям!) И URL-адреса ...

Вам нужно будет загрузить Selenium Дистанционный пульт Контроль и он работает в фоновом режиме для работы модуля.

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

0 голосов
/ 07 мая 2010

Если вам нужен только XPath-поиск HTML, есть количество модулей на выбор , но Test :: XPath выглядит лучше всех.

  use Test::XPath;

  my $html = ...get it however...

  # Create a Test::XPath object from your HTML
  my $tx = Test::XPath->new( xml => $html, is_html => 1 );

  # Test for the existence of your table rows.
  $tx->ok( q{//tbody[@class='table-data']/tr/td/div[@class='table-item']}, sub {
      # Run more tests on each node returned by the above xpath expression
      $_->like( './text()', qr/specified text/, "row contains the right text" );
  }, 'found table rows' );

Возможно, мой XPath немного сбит с толку, но вы поняли.

...