【发布时间】:2018-12-12 13:30:32
【问题描述】:
我的测试失败,因为我不知道在 onChange 值中声明什么,
describe("App", function() {
const wrapper = shallow(<App />);
it("should have an input", function() {
expect(
wrapper.contains(<input type="text" onChange={null} />)
).toBeTruthy();
});
});
我的组件中只有这个
<input type="text" onChange={this.changeInput} />
【问题讨论】:
-
你可以试试onChange={() => jest.fn()}
-
真正简单的
expect(wrapper).toMatchSnapshot()怎么样?它检查了更多属性/组件,您可以在expect(wrapper.find(...)).to中硬编码 -
@skyboyer 我试图说服自己,即使这是有道理的,测试 ui 对我来说很奇怪,因为一旦 ui 在那里,就意味着它会在那里,我可以测试功能但测试 ui 存在似乎工作太多了。
-
这就是为什么你一定要看看testing with snapshots :)