gpt4 book ai didi

javascript - 无法迭代 ElementArrayFinder

转载 作者:行者123 更新时间:2023-11-30 13:47:03 26 4
gpt4 key购买 nike

我是使用 Protractor 编写端到端 Javascript 测试的初学者。我一直在尝试识别具有与之关联的文本属性的元素数组。我可以使用

来定位他们

groupedNodeNumbers : ElementArrayFinder;

this.groupedNodeNumbers = this.element.all(by.css(".side-label-background + .side-label"));

这应该会给我一个元素数组,我可以在这些元素上调用 getText() 来提取与每个元素关联的值。

validateCountGraphNodes = async() => {
let count = 0;
console.log('Inside')
this.groupedNodeNumbers.each((groupedNodeElement) => {
groupedNodeElement.getText().then((num) => {
console.log('Inside loop')
count += parseInt(num, 10);
console.log(count);
});
});
}`

我能够记录 ('Inside') 但不能记录 ('Inside Loop'),因此我的函数无法检索与每个元素关联的文本。

有人可以指出我哪里出错了吗?

最佳答案

由于 getText() 应用返回字符串而不是字符串数组(现有问题),您可以尝试以下操作:

const cssSelector = ".side-label-background + .side-label";


$$(cssSelector).getText().then(textArrNotArr => {
for(let i = 0; i< textArrNotArr.lenght; i++) {
console.log('arr[i] = ', textArrNotArr[i]);
}
});

$$(cssSelector).count().then(elFinderArray => {
elFinderArray.forEach(elFinder => {
elFinder.getText().then((txt, index) => {
console.log(index);
});
});
});

注意:$$('cssSelector') 可以用来代替 element.all(by.css('cssSelector'))

关于javascript - 无法迭代 ElementArrayFinder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59099692/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com