testing - 失败时重新启动夹具
问题描述
我写了一个测试,它通过了 95% 的时间,而其他 5% 的时间都没有通过。我仍然不知道它为什么会失败(我的猜测是组件没有正确渲染)。
我实现了一个页面重新加载调用来重新加载页面并重试,但它不是很可靠。
万一出现故障,重新启动灯具的最佳方法是什么?
这是一个示例测试,它故意无法模拟我的选择器,该选择器在大多数情况下都可以工作,但有时会失败。
import { Selector } from 'testcafe';
const URL = 'https://www.youtube.com/watch?v=RWQtB6Xv01Q';
fixture `Portal Experience playback`
.page `${URL}`;
test('Testing YouTube', async t => {
await t.click(Selector('.wrong-selector')); // to emulate my unstable test
});
结果是
✖ Testing YouTube
1) The specified selector does not match any element in the DOM tree.
是否可以将测试放在 for 循环中,并在测试通过时让它跳出循环?
解决方案
推荐阅读
- php - 时间基于国家和地区
- javascript - 当某些值有点时,如何按字母数字对数组进行排序?
- azure - 具有不同行数的分隔文件 Azure 数据工厂
- google-cloud-platform - 如何在 gcp 中使用警报启动脚本?
- powershell - 如何通过使用 powershell 验证文本文件中的每一行来维护会话
- javascript - 访问要删除的元素属性
- reactjs - 如何在没有 Webpack 的情况下将 Dotenv 与 react-scripts 一起使用
- spring-boot - 重新连接后生菜失去客户端跟踪
- java - 如何在Java中将类对象作为变量传递
- c# - 如何使用 NPOI 在 .net 核心中使用范围