Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript testcafe:每次点击后都要检查一些东西_Javascript_Testing_Automated Tests_E2e Testing_Testcafe - Fatal编程技术网

Javascript testcafe:每次点击后都要检查一些东西

Javascript testcafe:每次点击后都要检查一些东西,javascript,testing,automated-tests,e2e-testing,testcafe,Javascript,Testing,Automated Tests,E2e Testing,Testcafe,我正在测试一个web应用程序,它将一些错误呈现为HTML,并且没有给出其他问题发生的指示。每次单击后,我想查看是否存在.error元素 我知道我可以在每次点击后手动添加它,但它会使我的测试变得混乱,并且很容易忘记一些实例。有没有办法告诉testcafe某个条件会导致测试失败,即使我没有明确检查它?我做了如下操作: const scriptContent = ` window.addEventListener('click', function () { if($('.error').leng

我正在测试一个web应用程序,它将一些错误呈现为HTML,并且没有给出其他问题发生的指示。每次单击
后,我想查看是否存在
.error
元素


我知道我可以在每次点击后手动添加它,但它会使我的测试变得混乱,并且很容易忘记一些实例。有没有办法告诉testcafe某个条件会导致测试失败,即使我没有明确检查它?

我做了如下操作:

const scriptContent = `
window.addEventListener('click', function () {
  if($('.error').length > 0) {
    throw new Error($('.error').text());
  }
});
`;
fixture`Main test`
  .page`../../dist/index.html`.clientScripts(
    { content: scriptContent }
);
这将在我正在测试的页面上注入一个脚本。每次单击后,它都使用jQuery查看是否存在错误类。如果是,它会在我正在测试的页面上抛出一个错误。Testcafe报告该错误的消息

我希望有更好的办法