Javascript 如何更改按钮的禁用属性
我不知道如何通过react测试库&&jestJavascript 如何更改按钮的禁用属性,javascript,reactjs,jestjs,react-testing-library,Javascript,Reactjs,Jestjs,React Testing Library,我不知道如何通过react测试库&&jest 当不允许用户权限时,将禁用按钮集 const mockFindServer = jest.fn(); const mockAddServer = jest.fn(); const mockHandleClose = jest.fn(); const { getAllByText } = render( <FindServerModal isOpen isEmpty={false} isFailed={false}
当不允许用户权限时,将禁用按钮集
const mockFindServer = jest.fn();
const mockAddServer = jest.fn();
const mockHandleClose = jest.fn();
const { getAllByText } = render(
<FindServerModal
isOpen
isEmpty={false}
isFailed={false}
serverCandidates={[
{ name: 'TEST1', syncIpAddress: '1.1.1.1' },
{ name: 'TEST2', syncIpAddress: '1.1.1.2' },
]}
findServer={mockFindServer}
addServer={mockAddServer}
onClose={mockHandleClose}
/>,
);
it('test button', () => {
const buttons = getAllByTest('Add'); # two disabled buttons
buttons.map(btn => {
btn.setAttribute('disabled', 'false');
fireEvent.click(btn);
})
expect(mockAddServer).toHaveBeenCalledTimes(2); # failed
})
const mockFindServer=jest.fn();
const mockAddServer=jest.fn();
const mockHandleClose=jest.fn();
常量{getAllByText}=render(
,
);
它('测试按钮',()=>{
const buttons=getAllByTest('Add');#两个禁用的按钮
按钮映射(btn=>{
btn.setAttribute('disabled','false');
fireEvent.单击(btn);
})
预期(mockAddServer).tohavebeincalledtimes(2);#失败
})
按钮在实际应用中是如何被禁用的,它是基于一些道具。或者按钮是如何启用或禁用的。你能再解释一下吗?那么,基于一些道具(用户的身份验证级别)的帮助会更容易,这样你就可以有两个测试用例,一个不是启用的,一个是禁用的,你可以通过相应的道具,在jest dom中不能更改吗?像setAttribute函数那样,如果你这样设置它,它就违背了测试的全部目的。按钮在实际应用中是如何被禁用的,它是基于一些道具的吗。或者按钮是如何启用或禁用的。你能再解释一下吗?那么,基于一些道具(用户的身份验证级别)的帮助会更容易,这样你就可以有两个测试用例,一个不是启用的,一个是禁用的,你可以通过相应的道具,在jest dom中不能更改吗?与setAttribute函数一样,如果这样设置,则会破坏测试的整个目的。