Backbone.js 如何与Jasmine一起使用React测试实用程序
我通过React用testutils编写了单元测试代码。 但是遇到了一个问题 我的环境是:Backbone.js 如何与Jasmine一起使用React测试实用程序,backbone.js,jasmine,reactjs,Backbone.js,Jasmine,Reactjs,我通过React用testutils编写了单元测试代码。 但是遇到了一个问题 我的环境是: 轨道4 茉莉花2.0.0 主干1.1.2 描述(“cNotice”,函数(){ 它(“lol”,函数(){ console.log(注意);//当前 console.log();//返回构造函数 var实例=; var component=React.addons.TestUtils.renderIntoDocument(实例); expect(component.getDOMNode().child
- 轨道4
- 茉莉花2.0.0
- 主干1.1.2
描述(“cNotice”,函数(){
它(“lol”,函数(){
console.log(注意);//当前
console.log();//返回构造函数
var实例=;
var component=React.addons.TestUtils.renderIntoDocument(实例);
expect(component.getDOMNode().childNodes[0].className).toBe('notice');
});
});
错误消息是:
错误:不变冲突:addComponentAsRefTo(…):只有ReactOwner可以有引用。这通常意味着您试图向没有所有者的组件添加引用(也就是说,不是在另一个组件的render
方法中创建的)。尝试在一个新的顶级组件中渲染此组件,该组件将保存ref
更新 此代码没有问题:
描述(“cNotice”,函数(){
var通知=null;
beforeach(函数(){Notice=React.createClass({…});});
它(“lol”,函数(){
var实例=;
var component=React.addons.TestUtils.renderIntoDocument(实例);
expect(component.getDOMNode().childNodes[0].className).toBe('notice');
});
});
但我想从外部文件导入通知组件。已解决 我使用了窗口名称空间。
从外部文件导入的通知组件
描述(“cNotice”,函数(){
它(“lol”,函数(){
var component=React.addons.TestUtils.renderIntoDocument(window.Notice({message:“显示消息”}));
expect(component.getDOMNode().childNodes[0].className).toBe('notice');
});
});