从文档中,findBy
查询返回一个 Promise。但是,Promise.prototype.catch()
在将它们与 async/await + try...catch 一起使用的情况下,使用这些查询似乎不起作用。
例如,“未找到”按预期记录在这里:
const { screen } = require('@testing-library/dom');
beforeAll(() => {
document.body.innerHTML = `
<header></header>
`;
});
test('DOM', async () => {
try {
await screen.findByRole('aaaaa');
console.log('found');
} catch {
console.log('not found');
}
});
但是,这里没有记录任何内容:
test('DOM', () => {
screen.findByRole('aaaaa')
.then(() => {
console.log('found');
})
.catch(() => {
console.log('not found');
});
});
是否有一个原因?