首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用codeceptjs测试失败后继续

使用codeceptjs测试失败后继续
EN

Stack Overflow用户
提问于 2018-08-08 09:43:44
回答 2查看 1.1K关注 0票数 1

我正在使用codeceptjs和puppeteer来测试单页应用程序的端点是否启动,以及它们上是否有正确的内容。我需要使用类似codeceptjs w/ puppeteer的东西,因为每个端点都必须呈现,因为页面上的大部分内容是由AJAX请求检索的,如果使用常规PHP版本的codeceptjs,则不会触发这些请求。

我首先通过GET请求检索将要测试的端点的列表。然后,我循环遍历它们并运行一些断言,以检查是否存在各种元素。我面临的问题是,如果来自某个端点的某些内容丢失,测试将失败并立即退出,因此不会检查其余端点。我需要一种能够继续检查其余端点的方法。

代码语言:javascript
复制
Scenario('Test Endpoints From Sitemap', async (I) => {

    // get the sitemap
    var sitemap = await I.sendGetRequest("url/to/sitemap");
    sitemap = JSON.parse(sitemap.raw_body);

    for(i = 0; i < sitemap.length; i++){
        await I.amOnPage(sitemap[i].url); // load the endpoint
        I.seeElement(sitemap[i].element) // check for an element
    }

});

如果达到失败的断言,是否可以不使用codeceptjs立即退出测试用例?如果没有,有没有人能建议我用另一种方法来完成我正在尝试做的事情?谢谢

EN

回答 2

Stack Overflow用户

发布于 2018-10-18 03:26:25

不使用I.seeElement(),而使用:

代码语言:javascript
复制
if (I.grabNumberOfVisibleElements(sitemap[i].element) == 0) {
  // element not found, use an action or logging
}
票数 0
EN

Stack Overflow用户

发布于 2018-09-16 01:49:26

在钩子之前移动你的站点地图检索,存储结果,然后从每个url中启动单个场景,怎么样?这样,在检查所有urls之前,它不会取消套件运行

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51737518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档