2013-08-05 9 views
8

Sto scrivendo una specifica utilizzando Capybara per testare la funzionalità di una barra di ricerca sul mio sito web. Dopo aver seguito le istruzioni in questa page su come simulare la pressione del tasto Invio in Rspec/Capybara, ottengo il seguente errore quando ho eseguito il mio test:Capybara: NotSupportedByDriverError quando si prova a simulare premendo <ENTER>

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

Sto facendo qualcosa di sbagliato? Ecco i contenuti del mio file spec:

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 

Apprezzo la vostra assistenza!

+0

Non ho installato la gemma capybara-webkit! – Thalatta

+4

Se qualcuno ha una risposta per questo quando si usa Poltergeis come driver Capybara, lo apprezzerò :) –

+1

Ho la gemma nel mio gemfile e ho fatto 'bundle' ma non funziona né – Charlon

risposta

7

Ok, quindi non avevo installato il capybara-webkit e quindi ho ricevuto l'errore che ho fatto. Grazie!

Problemi correlati