TestCafe——为空页面重试测试页面行为



我正在努力理解TC的重试测试页面功能。让我们在尝试运行测试但忘记运行前端应用程序(通常托管在http://localhost:6666)。测试运行程序创建新的浏览器实例,重定向到localhost:6666,但无法获得响应。

当前行为:

  • 隔离模式-尝试重新打开页面3次,抛出错误
  • 重试测试页-第一次尝试时抛出错误。根本没有重试

预期行为:

  • 难道不应该--重试测试页面在失败之前最多重试请求十次吗

执行参数:

CLI:testcafe chrome/features_tests/retry_test_pages--重试测试页--主机名localhost

代码:

import selectors from '../retryTestPages.po';
fixture("Retry Test Pages")
.beforeEach(async t => {
await t
.navigateTo(http://localhost:6666)
.expect(selectors.header.exists).ok({ timeout: 20000 });
});
test
('Test 1', async t => {
await t
.click(selectors.nonExistingElement);
});

这是预期的行为。--quarantine-mode选项将重新启动整个测试。同时,--retry-test-pages在Web浏览器端重试发送请求。因此,浏览器应该知道该页面存在,并且可以重试发送请求。从技术上讲,这意味着fetch事件应该触发。

最新更新