我们在网络应用中有一个表,其概念如下:
<list>
<list-item>
<span>Name:</span>
<div>John</div>
</list-item>
... goes on with repeated list-items with span's and div's ...
</list>
是否可以执行element.all(by.tagName('span') OR by.tagName('div'))
之类的操作?我只想将其中的元素提取到字典中,其中span中的元素是Key,div中的元素是value。然后断言行值与预期结果匹配。
答案 0 :(得分:1)
这似乎是.map()
的一个很好的用例:
var listItems = $$("list list-item").map(function (listItem) {
return listItem.element("span").getText().then(function (label) {
return listItem.element("div").getText().then(function (value) {
return {
label: value
};
});
});
});
listItems.then(function (values) {
console.log(values);
});
values
将是一个对象数组。