Тестирование перетаскивания в ruby - PullRequest
3 голосов
/ 23 февраля 2012

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

it 'should drag and drop' do                
    draggable = @driver.find('//*[@id="2"]').first
    droppable = @driver.find('//*[@id="dropmembers4"]').first
    draggable.drag_to(droppable)
    @driver.find('//div[contains(., "Dropped!")]').should_not be_nil    
end

В настоящее время я получаю сообщение об ошибке:

Failure/error: draggable = @driver.find('//*[@id="2"]').first
No method error: undefined method 'find' for nil:NilClass

Любая помощь будет великолепна.

Спасибо

1 Ответ

1 голос
/ 24 февраля 2012

Переменная @driver не существует, это означает, что инициализация не работает.Вот минимальный код инициализации:

$ [sudo] gem install selenium
$ selenium install

и код для его использования:

require 'selenium'
@driver = Selenium::WebDriver.for(:chrome)

И если вы используете упаковщик для определения зависимостей, вы должны выполнить:

$ bundle install

А потом этот код:

require 'rubygems'
require 'bundler/setup'
require 'selenium'
@driver = Selenium::WebDriver.for(:chrome)
...