Показаны сообщения с ярлыком capybara. Показать все сообщения
Показаны сообщения с ярлыком capybara. Показать все сообщения

1/15/2015

Jenkins, как инструмент для запуска тестов



Настало время нам познакомится с Jenkins’ом. Использовать его будем в качестве автоматического прогона тестов на удаленном сервере. Так как надоело использовать свою рабочую машину и ждать, когда же они наконец-то пройдут… Или упадут.

2/16/2014

Настраиваем тестовое окружение Cucumber+Capybara+WebDriver (или Capybara-webkit) в Ruby on Rails приложении.


 

Существует несколько способов установки и настроить тестового окружение на вашем маке. Все они приводят к одному результату.
В этой статье будет рассматриваться самый простой и распространенный по мнению автора метод с использованием homebrew и rvm, хотя в качестве альтернативы можно использовать ruby-build  и  rbenv.
Для того, чтобы можно было считать ваше тестовое окружение настроенным, вы должны установить следующие компоненты:

- XCode
 - Homebrew - менеджер пакетов для MacOS
 - RVM (Ruby Version Manager)  Программа для управления версиями Ruby.
 - Необходимую версию Ruby в зависимости от проектов.
 - Необходимую версию Rails - фреймворка для веб-разработки, написанного на языке программирования Ruby.
 - Гемы

9/27/2013

Навигация между окнами в автоматизированных тестах


В процессе создания автоматических тестов часто возникает необходимость в навигации между окнами браузера.

Основное неудобство в построении шага заключается в том, что web-драйверы webkit и selenium  отличные друг от друга механизмы переключения между окнами - то, что работает для webkit, не будет работать с selenium, и наоборот.

Следующий шаг позволит вам переместить фокус действия с одного окна на другое, учитывая используемый web-драйвер. 

When (/^I access the new window$/) do 
 if Capybara.javascript_driver == :webkit
  page.driver.browser.window_focus(page.driver.browser.window_handles.last)
 else
  page.driver.browser.switch_to.window(page.driver.browser.window_handles.last)
 end
end

В ходе выполнения теста мы производим шаг, в следствие которого появляется новое окно. Следующим шагом станет описанный выше шаг "I access the new window".

В зависимости от выбранного при запуске теста web-драйвере выполнится один из вариантов переключения фокуса.

Для драйвера webkit - переключение фокуса происходит при помощи действия:
page.driver.browser.window_focus(page.driver.browser.window_handles.last)

Для драйвера selenium - следующее действие:
page.driver.browser.switch_to.window(page.driver.browser.window_handles.last)



7/30/2013

Cucumber и взаимодействие с iframe

 

Шаг Cucumber для взаимодействия с <iframe>, используя Capybara.


<ifame> должен иметь заданный атрибут name, с которым будет работать шаг.

When I press "Foo" in the iframe "myframe"
Then I should see "Bar!" in the iframe "myframe"

Then /^(.*) in the iframe "([^\"]+)"$/ do |step, iframe_name|
  browser = page.driver.browser
  browser.switch_to.frame(iframe_name)
  step(step)
  browser.switch_to.default_content
end

Найдено тут