无法循环访问比较文本值的数组,使用量角器未定义的结果
Cannot loop through array comparing text values, undefined result with Protractor
我是量角器和JavaScript的新手,并且正在努力尝试将分隔字符串与数组进行比较。
我试图做的是找到所有元素的列表,然后从每个元素中循环遍历数组以将文本值与分隔字符串进行比较,但分隔字符串值是"未定义的"
element.all(by.css('.itemField')).then(function (allFieldItems) {
var toCompare= ["AGO", "9"]
for (var i = 0; i < toCompare.length; i++) {
var valueToCompare = toCompare[i]
allFieldItems[i].getText().then(function (text) {
if(text != valueToCompare[i]){
console.log("Values don't match")
}
}.bind( i))
}
})
问题是"if(text != valueToCompare[i]) "valueToCompare[i]"行总是"未定义",我正在寻找有关如何在不使用期望语句的情况下解决此问题的帮助。
您可以直接根据element.all()
的结果调用getText()
:
var toCompare = ["AGO", "9"];
element.all(by.css('.itemField')).getText().then(function (texts) {
for (var i = 0; i < toCompare.length; i++) {
if (texts[i] != toCompare[i]) {
console.log("Values don't match");
}
}
});
或者,您甚至可以这样期望它(不确定这是否是您实际尝试做的事情):
expect($$('.itemField').getText()).toEqual(toCompare);
相关文章:
- 奇怪的Javascript结果
- Javascript(jQuery)给了我奇怪的结果
- JSONP请求返回结果,但也触发error_callback
- 如何在chrome扩展中存储数据/结果,以及如何使用setTimeout使其只被调用一次
- Javascript,输出结果后页面不断刷新
- 这是使用html快照和谷歌获取的预期结果吗?SEO/SPA
- 将地理编码结果转换为php变量以发布到mysql数据库
- AngularJS/HTML/Bootstrap元素用于动态搜索结果
- JQuery:向多个匹配结果添加换行符的最简单方法
- 使用量角器的当前url单元测试的getTitle
- 当查询不在displayField中时,引导Ajax Typeahead不显示结果
- webpack代码拆分了handlerbs文件——结果是文件很大
- JavaScript循环无法正确计算/显示结果
- 在量角器中验证测试结果(非“预期”功能)
- 对 URL 使用 E2E 量角器测试 HTTP 结果
- 无法循环访问比较文本值的数组,使用量角器未定义的结果
- 运行量角器配置结果'此网页不可用'
- 量角器测试结果在Excel表格中
- 量角器:使用api调用的结果
- 量角器js,中继器不通过'结果'