2012-01-09 53 views
5

我有一個標記爲@javascript的黃瓜場景,我用一些真正基本的內聯js調用來測試它。我跑這個使用黃瓜(導軌2)不加載jQuery

Capybara.javascript_driver =:WebKit的

如果我這樣做的網頁上,有問題的元素後(其中有ID =「ajax_test_results」,不用擔心,雖然AJAX ,現在)

document.getElementById('ajax_test_results').innerHTML = 'Replaced with basic js, ie not jquery, without waiting for pageLoad'; 

那麼它的工作原理:如果我呈現出在我的測試頁面,我可以看到的是,爵士已經運行和更新的內容。然而,如果我嘗試用jquery做同樣的事情,那麼它不起作用。我認爲,jquery沒有被加載,但我不知道如何去調試它。

任何想法的人?我看到這個帖子看起來有希望https://stackoverflow.com/questions/8428405/cucumber-tests-jquery-does-not-loaded-in-webdriverconfig.assets.debug = true導致我的錯誤 - 我認爲這只是軌道3。是否有一個軌道2相當於?或其他解決方案?

感謝您的任何意見 - 最大

+0

我有這個相同的問題,我不清楚在哪裏你會告訴黃瓜加載jQuery。 – bias 2012-05-06 22:25:58

+0

難道是jQuery不加載嗎? – moritz 2012-06-16 16:11:48

+1

看起來很明顯,但您可能會在頁面呈現之間通過調用'sleep'幾秒鐘來調試它,並嘗試測試元素的存在 – varatis 2012-07-03 20:48:52

回答

0

爲了調試你可以使用的console.log(「信息」)或警告語句。它會將你的信息輸出到終端屏幕。你也可以使用:

Gemfile: 
    gem 'debugger' 

When /your step/ do 
    require 'ruby-debug' 
    debugger 
end 

然後你可以使用page.evaluate_script或page.execute_script方法進行調試。這很容易做到。

根據jQuery的問題,你可以嘗試使用$而不是jQuery?

Alex。