Protractor 使用量角器查找web元素

Protractor 使用量角器查找web元素,protractor,Protractor,如何使用量角器识别此画布元素 我还想读取此图表上的工具提示值(canvas元素中的甜甜圈图表)。您没有很多选项。如果css是唯一的,我会使用css: <div _ngcontent-c13="" class="canvas-container" style="width: 100%;"><div class="chartjs-size-monitor" style="position: absolute; left: 0px; top: 0px; right: 0px; bot

如何使用量角器识别此画布元素


我还想读取此图表上的工具提示值(canvas元素中的甜甜圈图表)。

您没有很多选项。如果css是唯一的,我会使用css:

<div _ngcontent-c13="" class="canvas-container" style="width: 100%;"><div class="chartjs-size-monitor" style="position: absolute; left: 0px; top: 0px; right: 0px; bottom: 0px; overflow: hidden; pointer-events: none; visibility: hidden; z-index: -1;"><div class="chartjs-size-monitor-expand" style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;"><div style="position:absolute;width:1000000px;height:1000000px;left:0;top:0"></div></div><div class="chartjs-size-monitor-shrink" style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;"><div style="position:absolute;width:200%;height:200%;left:0; top:0"></div></div></div>
或名称:

var canvassElement = element(by.css(".chartjs-render-monitor"));
或xpath:

var canvassElement = element(by.css("[title='Gender']"));

或者,如果dom上没有唯一的,则同时使用这两种方法:

.//div[@class='chartjs-render-monitor']

您能检查一下xpath是否有效吗?我昨天试过了,但没有成功。被所有css用于该类,但当我对其进行迭代时,它返回“尝试访问0个元素”@user9919998我更新了答案添加xpath定位器无效,无法找到元素。。。同一页面上还有另一个小部件,其类为@class='chartjs-render-monitor'@user9919998请尝试在一个xpath中使用这两个属性,我更新了答案,检查最后一行。
.//div[@class='chartjs-render-monitor']
 .//div[@title='Gender'][@class='chartjs-render-monitor']