Testcafe 忽略覆盖元素
Testcafe ignore overlaying element
问题:无法找到 Canvas,因为 canvas 内光标位置后的多段线重叠。
目标元素:Canvas
叠加元素:折线
可能的解决方案:忽略折线元素??
解释:
这条折线阻挡了底层元素 (canvas),导致 TestCafe 在点击时看不到 canvas。
TestCafe 一直等到等待时间结束,并在等待完成后点击给定的位置。这会导致测试成功。但是因此有很大的延迟。
由于测试中的其他步骤需要等待时间,无法调整等待时间。
遗憾的是,由于医疗环境,我无法分享项目。
请帮忙。
亲切的问候
您可以这样使用 ClientFunction
来隐藏元素:
import { ClientFunction } from 'testcafe';
fixture `fixture`
.page`https://google.com`;
test('test', async t => {
const hideElement = ClientFunction(() => {
document.querySelector('#tsf').style.display = 'none';
//NOTE: (document.querySelector('#tsf') as HTMLElement).style.display = 'none';
});
await hideElement();
await t.debug();
});
问题:无法找到 Canvas,因为 canvas 内光标位置后的多段线重叠。
目标元素:Canvas
叠加元素:折线
可能的解决方案:忽略折线元素??
解释:
这条折线阻挡了底层元素 (canvas),导致 TestCafe 在点击时看不到 canvas。
TestCafe 一直等到等待时间结束,并在等待完成后点击给定的位置。这会导致测试成功。但是因此有很大的延迟。
由于测试中的其他步骤需要等待时间,无法调整等待时间。
遗憾的是,由于医疗环境,我无法分享项目。
请帮忙。
亲切的问候
您可以这样使用 ClientFunction
来隐藏元素:
import { ClientFunction } from 'testcafe';
fixture `fixture`
.page`https://google.com`;
test('test', async t => {
const hideElement = ClientFunction(() => {
document.querySelector('#tsf').style.display = 'none';
//NOTE: (document.querySelector('#tsf') as HTMLElement).style.display = 'none';
});
await hideElement();
await t.debug();
});