问题描述
我试图执行此测试,我得到:“失败:脚本超时”,我不理解错误在哪里,从字面上看,我已经复制粘贴了,在最后一个测试用例中正常工作,但是在这段代码中得到了那个错误。预先感谢。
var name_filter = browser.element(by.xpath(browser.params.constants.GENERALPATHS.CATALOG.NAMEFILTER));
var seriestitle_filter = browser.element(by.xpath(browser.params.constants.GENERALPATHS.CATALOG.SERIESTITLEFILTER));
var catalog_title = browser.element(by.xpath(browser.params.constants.GENERALPATHS.CATALOG.CATALOGTITLE));
await browser.wait(EC.elementToBeClickable(name_filter),waitLongTime);
await browser.wait(EC.elementToBeClickable(seriestitle_filter),waitLongTime);
var catalogues = await element.all(by.className('ui-grid-cell-contents ng-binding ng-scope'));
for(var i=0; i<catalogues.length; i++) {
var catalogue_text = await catalogues[i].getText();
await catalogues[i].click();
await browser.wait(EC.elementToBeClickable(name_filter),waitLongTime);
await browser.wait(EC.elementToBeClickable(seriestitle_filter),waitLongTime);
expect(catalog_title).toEqual(catalogue_text);
}
解决方法
一段时间前,我已向您推荐了切换到async/await
的方法。我看到您正在使用它,并且希望这可以使您与量角器的合作经验更好
很遗憾,我无法再次给您直接回答您的问题的方法,因为该脚本可能会在任何行上引起问题,并且如果没有正在测试的应用程序,就无法找到确切的位置。此外,可能还有一些与您的配置有关的问题。
但是,我倾向于帮助人们选择测试开发流程来解决问题
在此示例中,我强烈建议您设置run configuration in webstorm或vs studio。这将允许您逐行执行任何脚本,浏览变量等。如果执行此操作,则可以轻松找到脚本失败的行并立即进行故障排除。如果您找到问题所在,但仍然不明白为什么会发生,请告诉我,我将尝试引导您完成解决问题的步骤
希望有帮助,对不起,我很抱歉