Angular 角度量角器如何使用findElements(按.tagName)获取tr中的所有td
我是角度+量角器自动测试的新手。我试图循环遍历html表的行,并希望获得该行的每一列值。使用以下代码但不工作Angular 角度量角器如何使用findElements(按.tagName)获取tr中的所有td,angular,typescript,protractor,Angular,Typescript,Protractor,我是角度+量角器自动测试的新手。我试图循环遍历html表的行,并希望获得该行的每一列值。使用以下代码但不工作 $$('#mat-tab-content-0-2 > div > app-pick-loss-method > div.data-table-container.table > table > tbody').$$('tr').each(function (el, index) { if (index > 0) { el.findEleme
$$('#mat-tab-content-0-2 > div > app-pick-loss-method > div.data-table-container.table > table > tbody').$$('tr').each(function (el, index) {
if (index > 0) {
el.findElements(by.tagName('td')).then(function (cols) {
console.log('Subline: ', cols[0].getText());
console.log('Cat Indicator: ', cols[1].getText());
console.log('Method: ', cols[2].getText());
console.log('ELC: ', cols[3].getText());
console.log('Selected CV: ', cols[4].getText());
console.log('Weight: ', cols[5].getText());
});
}
})
有人能帮助我们吗?正确的方法是什么
谢谢如果您想查找所有HTML标记,我认为您无法通过tagName()找到它。试着这样做:
el=element.all(by.css('mat-tab-content-0-2td');
el.getText().then((文本)=>{
for(设i=0;i })
如果您将代码中出现的错误包括在内,将非常有用,但无论如何,请尝试更改以下行:
.findElements
.all
:
el.findElements(按.tagName('td'))。然后(函数(cols){
应该是:
el.all(by.tagName('td'))。然后(function(cols){
只要停止使用。然后()
语法,使用async/await
,一切都会很简单。类似这样的
let tableRows = $$('#mat-tab-content-0-2 > div > app-pick-loss-method > div.data-table-container.table > table > tbody tr');
let rowCount = await tableRows.count();
for (let i = 0; i < rowCount; i++) {
let cells = tableRows.get(i).all(by.css("td"));
let cellCount = await cells.count();
for (let j = 0; j < cellCount; j++) {
console.log('Cell ' + j + " " + await cells.get(j).getText())
}
}
let tableRows=$$('mat-tab-content-0-2>div>app pick loss method>div.data-table-container.table>table>tbody tr');
let rowCount=wait tableRows.count();
for(设i=0;i
行tableRows.get(i).element.all(by.css(“td”))中出错;类型ElementFinder上不存在all