React 测试库 .toHaveTextContent 完全匹配

new*_*mer 18 reactjs react-testing-library

expect(stuff).toHaveTextContent(text)仅当文本完全匹配时如何才能通过?

.toHaveTextContent("1")如果我正在测试的文本是“100”,则算作匹配

小智 15

你可以用 ff 代替:

expect(stuff.textContent).toBe('100')
Run Code Online (Sandbox Code Playgroud)


Ben*_*erf 5

expect(stuff).toHaveTextContent(/^100$/);如果您想完全匹配,请使用正则表达式。

正如文档(https://github.com/testing-library/jest-dom#tohavetextcontent)中所写,它将(只是)“检查给定节点是否有文本内容”


und*_*ore 0

使用innerHTML获取文本

const element = await waitFor(() => document.querySelector('<YOUR_QUERY>'));

expect(element.innerHTML).toEqual('100')
Run Code Online (Sandbox Code Playgroud)