作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
pageObject中有一个函数
this.openFilmPage = function() {
browser.waitForElementVisible("div[class='pg'", 1000);
for (var i = 0; i < 4; i += 1) {
console.log('Итерация № ' + i);
browser.waitForElementVisible("div[class='app'] > div[class='pg'] > div[class='home carousel'] > div[class='home-lst carousel-lst'] > div[class*='home-lst-itm nav-itm']:nth-of-type(" + i + ") > div[class='badge badge-currency']", 100, function(result) {
if (result.value) {
return browser;
console.log('Платный фильм обнаружен');
} else {
return browser;
console.log('Платный фильм отсутствует');
}
});
}
return browser;
}
考试有挑战
'TC67 Переход на страницу платного фильма': function(browser) {
browser
.page.App().open()
.page.App().openFilmPage()
.end();
}
开始后我在控制台得到下一个结果
Running: TC67 Переход на страницу платного фильма Итерация № 0 Итерация № 1 Итерация № 2 Итерация № 3
然后有一个检查,一旦一个零位置,测试失败,因为在这个位置不是预期的项目。
我希望所有测试都将一个接一个地执行,结果我得到一个与指定的 css 路径匹配的元素。
但经验表明情况并非如此,循环似乎以异步模式运行,因为它可以克服吗?
附言。对不起我的英语。
最佳答案
看起来您正在尝试创建自定义命令。查看此部分:
http://nightwatchjs.org/guide#writing-custom-commands
您会注意到您需要创建的文件的名称应该是实际的方法名称(因此在您的情况下:openFilmPage.js)
最后;您需要将 nightwatch.json 中的路径添加到自定义命令所在的文件夹 ( http://nightwatchjs.org/guide#basic-settings )
希望对您有所帮助!
关于javascript - 如何在 nightwatch.js 中使用循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30875701/
我是一名优秀的程序员,十分优秀!