【发布时间】:2017-11-28 06:23:34
【问题描述】:
我正在使用酶来测试我的create-react-app 组件,但它不能直观地工作。
我是不是误解什么是浅层渲染?
import React from "react";
import { Card } from "./Card";
const TestUser = () => {
return (
<div>
<div className="test" />
<div className="wrapper">
<Card />
<Card />
<Card />
</div>
</div>
);
};
export default TestUser;
.test.js
import React from "react";
import TestUser from "./TestUser";
import { shallow } from "enzyme";
import { Card } from "./Card";
it("should render right", () => {
const component = shallow(<TestUser />);
expect(component.find(Card)).to.have.length(3);
});
我希望它应该通过测试,因为它在 TestUser 中确实有 3 个 Card 组件
但它输出:TypeError: Cannot read property 'have' of undefined
它是如何工作的?
【问题讨论】:
标签: unit-testing reactjs enzyme airbnb-js-styleguide