小编TML*_*123的帖子

如何期望 getByText 在反应测试库中为假?

我正在使用 Jest 和 React 测试库来测试组件。

我正在尝试测试模式,但我遇到了一个奇怪的问题。当我尝试在触发事件之前通过文本获取“模态标题”时,我收到错误,因为渲染的文档中不存在“模态标题”。如果我在触发“打开模态”按钮后尝试查找“模态标题”,它就会起作用。但我还想测试模态在触发事件之前不存在。所以我决定期望“模态标题”为假,但这不起作用。到目前为止,我已经尝试过 toBe(false)、toBeFalsy()、toBeNull() ,甚至尝试查看长度是否为 0,但没有任何提到的工作。我该如何解决这个问题。

it('Test Modal', () => {
    
    const { getByText } = render(<TestApp />);
   
    expect(getByText('Modal Title')).toBe(false);
    fireEvent.click(getByText('Open Modal'));
    expect(getByText('Modal Title')).toBeTruthy();
})
Run Code Online (Sandbox Code Playgroud)

reactjs jestjs react-testing-library

12
推荐指数
1
解决办法
2万
查看次数

标签 统计

jestjs ×1

react-testing-library ×1

reactjs ×1