如何在第二个 td 中显示文本。
<tr data-ng-repeat="s in systemSettings" class="ng-scope">
<td class="ng-binding">License Key</td>
<td class="ng-binding">rashmi123</td>
<td align="center">
<div data-ng-show="s.readOnly" class="text-warning ng-hide">read only</div>
<div data-ng-show="!s.readOnly"> <a href="" data-ng-click="onSettingEdit(s)"><i class="glyphicon glyphicon-edit"></i> </a> </div>
</td>
</tr>
我试图通过使用来获取它
expect(element("tr:nth-child(2) td.ng-binding:nth-child(2)").getInnerHtml()).toBe("rashmi123");
但它给出了无效的定位器错误。
最佳答案
您的元素定位器应包含诸如 - xpath
、css
等类型...
expect(element(by.css("tr:nth-child(2) td.ng-binding:nth-child(2)")).getInnerHtml()).toBe("rashmi123");
您也可以使用 .getText()
代替 getInnerHtml 来获取元素的文本。
var ele = element(by.css("tr:nth-child(2) td.ng-binding:nth-child(2)"));
expect(ele.getText()).toBe("rashmi123");
或者使用 Protractor 为 element(by.css())
提供的缩写形式 => $()
var ele = $("tr:nth-child(2) td.ng-binding:nth-child(2)");
expect(ele.getText()).toBe("rashmi123");
希望对您有所帮助。
关于javascript - 如何在 Protractor 的 <td> </td> 中显示文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37025571/