【发布时间】:2016-08-09 11:57:17
【问题描述】:
我正在学习使用 ReactTestUtils 库测试 React 无状态组件。这是我的简单组件:
import React from 'react';
const Greeter = ({name,place}) => (
<h1>Hello,{name}. Welcome to the {place}.</h1>
);
export default Greeter;
这是我的测试规范,为了让 renderIntoDocument 正常工作,我按照 here 的建议将我的 Greeter 组件包装在一个 div 中:
import {expect} from 'chai';
import React from 'react';
import ReactTestUtils from 'react-addons-test-utils';
import Greeter from '../Greeter';
describe('Greeter Components',() => {
it('renders correctly',() => {
var component = ReactTestUtils.renderIntoDocument(<div>
<Greeter name="Vamsi" place="Hotel California"/>
</div>);
var hasH1 = ReactTestUtils.findRenderedDOMComponentWithTag(component,'h1');
expect(hasH1).to.be.ok;
});
});
我得到了错误
findAllInRenderedTree(...):实例必须是复合组件。
我提供的代码是 jsbin here。
【问题讨论】:
标签: javascript unit-testing reactjs mocha.js karma-runner