2012-01-09 51 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。