2013-08-05 4 views
8

Piszę specyfikację używając Capybara, aby przetestować funkcjonalność paska wyszukiwania w mojej witrynie. Po wykonaniu instrukcji na temat tego, w jaki sposób page symulować naciśnięcie klawisza Enter w RSpec/Kapibara, pojawia się następujący komunikat o błędzie podczas uruchamiania moich testów:Capybara: NotSupportedByDriverError podczas próby symulacji naciśnięcia <ENTER>

Failure/Error: page.driver.execute_script(keypress) 
Capybara::NotSupportedByDriverError: 
    Capybara::Driver::Base#execute_script 

Czy robię coś źle? Oto zawartość mojego pliku specyfikacji:

require 'spec_helper' 

describe 'Search' do 
    it 'displays no results when non-existent things are looked up' do 

    visit root_path 

    page.first(".search-icon-small").click 

    fill_in "search", with: "NonExistent" 

    #simulate pressing Enter 
    keypress ="var e = $.Event('keydown', { keyCode: 13 }); $('body').trigger(e);" 
    page.driver.execute_script(keypress) 

    page.should have_content('No Results') 
    end 

    it 'displays content that exists' do 
    #Clients 
    client = Client.new 
    client.name = 'Gerard Leskovar' 
    client.save! 

    visit root_path 


    page.first(".search-icon-small").click 

    fill_in "search", with: "Leskovar" 

    keypress ="var e = $.Event('keydown', { keyCode: 13 }); $('body').trigger(e);" 
    page.driver.execute_script(keypress) 

    page.should have_content('Gerard Leskovar') 

    end 
end 

Doceniam Twoją pomoc!

+0

Nie miałem zainstalowanego klejnotu kapibara-webkit! – Thalatta

+4

Jeśli ktoś ma na to odpowiedź, używając Poltera jako sterownika Capybara, doceniam to :) –

+1

Mam klejnot w moim gemfile i zrobiłem 'bundle' ale to nie działa – Charlon

Odpowiedz

7

Ok, więc nie miałem zainstalowanego capybara-webkit i dlatego dostałem błąd, który zrobiłem. Dziękuję Ci!

Powiązane problemy