乐:
相应地更改代码如下:
.then(() => browser.elementIdElements(someElementId, 'a._3cnp'))
.then(buttonElem => {
// buttonElem's 'value' will contain a list of all the matching elements
// thus, you have to call getHTML() on each item from 'value'
// the following will return the HTML of the first matching element
console.log('\nPrint element HTML: ' + buttonElem.value[0].getHTML());
return buttonElem.value[0].getHTML();
})
更好的方法是在它们之间循环并打印HTML:
.then(() => browser.elementIdElements(someElementId, 'a._3cnp'))
.value.forEach(buttonElem => {
console.log('\nPrint element HTML: ' + buttonElem.getHTML());
return buttonElem.getHTML();
})
这个
.getHTML()
属性的作用域为
ELEMENT
物体。为了更多的教学方法,我要考虑的任务是
操作HTML代码
在一系列列表项中找到(
<li>
),来自AM无序列表(
<ul>
)
因此您可以执行以下操作:
-
browser.getHTML('ul.ourList li.ourListItems')
(
这将返回所有
<理工大学;
的HTML代码
)
-
browser.element('ul.ourList li.ourListItems').getHTML()
(
这将返回第一个
<li>'s
HTML代码
)
-
$('ul.ourList li.ourListItems').getHTML()
(
这相当于上面的命令,只是一个放松的版本
)
如果需要遍历所有
<理工大学;
获取HTML,请执行以下操作:
let locator = 'ul.ourList li.ourListItems';
browser.elements(locator).value.forEach(elem => {
let elemHTML = elem.getHTML();
console.log( JSON.stringify(elemHTML) );
elemHTML.doSomethingWithIt();
})
在哪里?
elem
will是具有以下格式的对象:
{ ELEMENT: '0.285350058261731-1',
'element-6066-11e4-a52e-4f735466cecf': '0.285350058261731-1',
selector: 'ul li.fw-item.fz-16.lh-36.pos-r',
value: { ELEMENT: '0.285350058261731-1' },
index: 0
}