lbr*_*uck 2 automated-tests web-testing reactjs e2e-testing testcafe
我有一套使用 TestCafe 运行的测试。在一个组件中,我需要根据应用程序是否在 testcafe 中运行来了解是否向窗口公开一些数据,即
if (window.Testcafe === true) {
window.property = data;
}
Run Code Online (Sandbox Code Playgroud)
这可以通过另一个测试框架 Cypress 来实现,它公开了 window.Cypress。我尝试在 testcafe 测试/装置中设置窗口属性,使用代码达到以下效果
test('Test 1', async t => {
await t.eval(() => {window.Testcafe = true});
const val = await t.eval(() => window.Testcafe);
// val === true
})
// In component window.Testcafe is false
Run Code Online (Sandbox Code Playgroud)
我对其他方法持开放态度(除了窗口属性)。还有其他人做过类似的事情吗?
TestCafe 向对象添加了一些属性window,可以帮助您确定您的站点正在与 TestCafe 配合使用。例如,您可以检查window['%hammerhead%']属性。如果存在,则说明 TestCafe 可以正常工作。
不过,我需要指出的是,它不是一个公共 API。未来几乎不会改变,但仍然不是100%的解决方案。
您能详细描述一下您的场景吗?如果很多用户觉得有帮助,我们可以考虑在未来实现这个功能。
另外,我想提一下,您可以使用以下形式在 TestCafe 存储库中创建功能请求
| 归档时间: |
|
| 查看次数: |
374 次 |
| 最近记录: |