Я игрался с селеном через rspec, но остался недоволен и увидел рекомендации по полтергейсту. Когда я пытаюсь запустить его со своими тестами, кажется, что драйвер полтергейста не появляется там, где должен. Я был немного сбит с толку, как тест на стойке соотносится с полтергейстом, но я пробовал много разных вещей. Затем я нашел этот простой пример и попытался заставить его работать, но все равно не повезло. Я использую jruby на окнах.
Я использую пример, найденный здесь: https://gist.github.com/pzol/1607842 Я переместил весь свой код в один файл, для этого случая нет специального помощника
Я установил phantomjs и запустил небольшой пример приветствия мира для phantomjs, и он находится на моем пути.
require 'rspec'
require 'capybara/rspec'
require 'capybara/poltergeist'
Capybara.javascript_driver = :poltergeist
Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(app, debug: true)
end
describe 'poltergeist', :type => :request, :js => true do
it 'should find github poltergeist in google' do
visit 'http://www.google.com/'
fill_in "q", :with => "github poltergeist"
click_button "btnK"
page.should have_content 'jonleighton/poltergeist'
end
end
jruby -S rspec полтергейст-test2.rb F
Неудачи:
1) полтергейст должен найти github poltergeist в Google Ошибка/ошибка: посетите 'http://www.google.com/' NoMethodError: неопределенный метод visit' for #<RSpec::Core::ExampleGroup::Nested_1:0x4324
4fd9>
# ./poltergeist-test2.rb:18:in
(корень)'
Завершено за 0,01 секунды 1 пример, 1 сбой
Неудачные примеры:
rspec ./poltergeist-test2.rb:17 # полтергейст должен найти github poltergeist в google