1 回答
TA贡献1802条经验 获得超6个赞
真的没有必要测试这个。该disabled道具是底层的HTML的一部分,所以通过测试它只是测试的HTMLbutton作品(你可以相信它)。更好的测试可能是检查disabled道具是否true在您尝试测试的条件下设置。
也就是说,一种方法是将您的onClick注入SampleButtonvia props,如下所示:
const SampleButton = ({ onClick }) => (
<button
disabled={true}
onClick={onClick}
test-attr="button"
type="button"
>
Click Me
</button>
);
然后你可以像这样测试它:
test('cannot click button if disabled', () => {
// Set up a mock function that allows you to make assertions
const mockOnClick = jest.fn();
// Pass it into SampleButton
const wrapper = shallow(<SampleButton onClick={mockOnClick} />);
const button = wrapper.find('[test-attr="button"]');
button.simulate('click');
// Make assertions
expect(mockOnClick).not.toHaveBeenCalled();
});
添加回答
举报