typescript - Testcafe 找不到包含在迭代器中的测试
问题描述
我的常见问题页面中几乎没有展开元素,所以我想测试所有这些元素。在foreach
部分中编写我的夹具和/或测试时,终端反映了一个错误,
ERROR no test to run.
我不明白为什么
我试图将唯一的测试和测试中的foreach
所有夹具包装起来,结果是一样的。
fixture('check FAQ expand items').page(URL.local.faq)//.meta({ status: 'indev' })
.beforeEach(async () => {await waitForReact();
})
.before(async t => {
await waitForReact();
await list();
}).only;
faqItems.forEach( (element) => {
test(`check that ${element.getReact(({key})=>key)} is present`, async t => {
await t.expect(element.find('[expanded={true]]').exists).ok();
});
});
我希望测试咖啡馆将在 faqItems.length
“检查常见问题解答扩展项目”夹具中运行大量测试
我用命令运行测试testcafe chrome faq.test.ts
UPD
let faqItems: Array<Selector> = [faq.item];
async function list() {
const count = await faq.item.count;
console.log(`count = ${count}`)
for (let i = 0; i < count; i++) {
await faqItems.push( await faq.item.nth(i));
console.log(await faqItems[i].getReact(({key})=> key));
}
}
fixture('check FAQ expand items').page(URL.local.faq)//.meta({ status: 'indev' })
.beforeEach(async () => {
await waitForReact();
await list();
})
faqItems.forEach((element)=>{
test(`check that ${element.getReact(({key})=>key)} is present`, async t => {
await t.expect(element.find('[expanded={true}]').exists).ok();
});
})
解决方案
首先,您预先设置部分代码不是forEach
循环的一部分,这可能会给您带来麻烦。我考虑faqItems.forEach()
这样fixture
移动
faqItems.forEach( (element) => {
fixture('check FAQ expand items').page(URL.local.faq)//.meta({ status: 'indev' })
.beforeEach(async () => {await waitForReact();
})
.before(async t => {
await waitForReact();
await list();
}).only;
test(`check that ${element.getReact(({key})=>key)} is present`, async t => {
await t.expect(element.find('[expanded={true]]').exists).ok();
});
});
})
如果fixture
您有一些不应该为每个常见问题项目运行的测试,则将其移至另一个夹具。
其次,我不确定你是否可以forEach
在这里使用,因为forEach
作为循环和作为数组的函数不能使用async/await
. 您可以使用for...of
循环或标准for
循环
推荐阅读
- c - 从 .txt 文件中读取内容并使用 fscanf 存储在结构中
- python - Scrapy - TypeError:只能将str(不是“list”)连接到str
- c++ - QT5 C++,有没有办法可以在 qlist 容器中获取小部件的当前文本
- r - 如何在不使用库的情况下将模型摘要的每一列存储在 R 的列表中
- c++ - 在 c++ 的 SetWindowsHookEx 函数中
- css - 使用 CSS 动画触发第二个动画关键帧(或永久移动 div)?
- javascript - 为什么图像没有显示在我的 html 中?
- firebase - Firestore:有没有一种无需阅读即可遍历 document_ID 的方法?
- hyperledger-fabric - Fabric 通道创建/通道/应用程序错误:此策略需要满足 1 个“管理员”子策略
- r - 按组完成具有新值的data.frame