Cucumber/Webrat: перейти по ссылке классом CSS?

Кажется, нет никакого способа получить java.io. Консольный объект при запуске приложения через Eclipse. Консоль командной строки не открыта с приложением, когда это выполняется как фоновый процесс (предпосылки к Eclipse?). В настоящее время нет никакого плагина Eclipse для обработки этой проблемы, главным образом вследствие того, что java.io. Консоль является заключительным классом.

Все, что можно действительно сделать, протестировать возвращенный Консольный объект на пустой указатель и продолжиться оттуда.

14
задан Keavon 20 May 2014 в 04:06
поделиться

4 ответа

Вот как я сделал это с огурцом, надеюсь, это поможет. Знак # в определении шага помогает CSS понять, что происходит.

Это работает только с идентификаторами, а не с именами классов

Определение шага

Then /^(?:|I )should see ([^\"]*) within a div with id "([^\"]*)"$/ do |text, selector|
  # checks for text within a specified div id
  within "##{selector}" do |content|  
    if defined?(Spec::Rails::Matchers)
      content.should contain(text)
    else
      hc = Webrat::Matchers::HasContent.new(text)
      assert hc.matches?(content), hc.failure_message
    end  
  end     
end

Функция

Scenario Outline: Create Project
  When I fill in name with <title>
      And I select <data_type> from data_type
      And I press "Create"
  Then I should see <title> within a div with id "specifications"

Scenarios: Search Terms and Results
   | data_type  | title        |
   | Books      | A Book Title |
4
ответ дан 1 December 2019 в 16:15
поделиться

Я не очень хорошо знаком с API WebRat, но как насчет использования поиска в DOM для получения ссылочного идентификатора класса, который вы ищете, а затем передачи его в функцию click_link?

Вот ссылка в некоторый javascript, чтобы получить элемент по классу. http://mykenta.blogspot.com/2007/10/getelementbyclass-revisited.html

Теперь, когда я думаю об этом, как насчет использования Javascript, чтобы просто изменить его на какой-то случайный идентификатор, а затем щелкнуть по нему?

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

0
ответ дан 1 December 2019 в 16:15
поделиться

У вас работает has_tag?

have_tag ('a.edit_button')

0
ответ дан 1 December 2019 в 16:15
поделиться

Вот как вставить текст в элемент с именем класса "edit_botton"

Then I should see "Translation here" within "[@class='edit_button']"
3
ответ дан 1 December 2019 в 16:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: