要解决这个问题,你可以使用angular-testing-library中的getByRole方法,并在选项中设置hidden: true。下面是一个示例代码:
import { render } from '@testing-library/angular';
import { MyComponent } from './my-component';
describe('MyComponent', () => {
it('should find a hidden element by role', async () => {
const { getByRole } = await render(MyComponent, {
template: `
Hidden Button
`,
});
const hiddenButton = getByRole('button', { hidden: true });
expect(hiddenButton).toBeInTheDocument();
});
});
在这个示例中,我们使用render函数从@testing-library/angular中导入来渲染MyComponent组件。然后,我们在测试中使用getByRole方法并将hidden: true选项传递给它来查找带有role="button"和hidden属性的隐藏按钮。最后,我们使用expect断言来验证找到的隐藏按钮是否存在于文档中。