单击酶测试中的复选框

问题描述 投票:1回答:1

我正在尝试模拟对Material-UI复选框的点击。我已经尝试过

selectAllCheckbox.simulate("change", { target: { checked: true } });

act(() => {
  selectAllCheckbox.props().onClick();
}); 

我尝试重新查找项目并更新包装程序,但无法获得已检查的道具更改。

我觉得我缺少一些基本知识。

我在这里有一个codeandbox:https://codesandbox.io/s/enzymetestformaterialuitable-t1ruq沙盒有一个Material-ui表(从其演示页面中提取)。

TIA

reactjs jestjs material-ui enzyme
1个回答
0
投票

[我从包括https://github.com/airbnb/enzyme/issues/216在内的一些来源获得帮助

通过测试的完整沙箱https://codesandbox.io/s/enzymetestformaterialuitable-updb9

选中表上的第4个复选框:

 let innerInputElement5 = wrapper
   .find('[role="checkbox"]')
   .hostNodes()
   .at(4);
 innerInputElement5.simulate("click");

选中标题中的不确定复选框:

let selectAllCheckboxInHeader = wrapper
      .find(TableHead)
      .find('input[type="checkbox"]')
      .simulate("change", { target: { checked: true } });
© www.soinside.com 2019 - 2024. All rights reserved.