我刚刚开始使用Jasmine,并在我的Rails 4项目中实现了它。
就像我做的一个简单的测试:
//= require activities
describe('activities', function() {
it("Some div to be div", function() {
expect($('<input type="checkbox" checked="checked"/>')).toBeChecked()
});
});这给出了错误TypeError: Object [object Object] has no method 'toBeChecked'。所以我只能假设jQuery或jasmine-jquery没有正确加载。
文档告诉我要在yaml中包含jasmine-jquery和jquery。所以我这样做了:
src_files:
- assets/application.js
- jquery
- jasmine-jquery
stylesheets:
- stylesheets/**/*.css
helpers:
- helpers/**/*.js
spec_files:
- '**/*[sS]pec.js'
src_dir:
spec_dir: spec/javascripts也许我没有正确地将jasmine-jquery和jquery加载到我的测试环境中?
发布于 2013-12-10 23:03:36
这个对象$('<input type="checkbox" checked="checked"/>')只是一个jQuery对象。它还不在DOM中,所以您不能说它是否被选中:)
要使其工作,首先需要在dom中显示它。
var checkbox;
checkbox = $('<input type="checkbox" checked="checked"/>')
$('body').append(checkbox);
expect($("input[type='checkbox']").toBeChecked();https://stackoverflow.com/questions/20497666
复制相似问题