selenium svg标签定位元素

SVG 指可伸缩矢量图形 (Scalable Vector Graphics)

需要xpath里面的name()方法:*[name()='svg']

 

从svg元素开始,下面的元素都要以  *[name()='svg'] 这种形式进行编写,需要通过 name 属性来进行定位。selenium在执行的时候才能够捕获到元素信息。

 

如果要同时需要该元素的其它属性可以用 and 的方式来进行定位。
写法如下:
//*[name()="svg" and @version="1.1"]//*[name()="image"]
//*[name()='svg' and contains(@class,'del')]

 
get nodeLine() {
return '//div[@id="__map0-innerscroller"]/*[name()="svg"]/*[name()="g"]/*[name()="g"]/*[name()="g"][7]/*[name()="path"][2]';
}
 

verifyNodeLine() {
let selector = $(this.nodeLine);
if (selector.isDisplayed) {
selector.moveTo();
reportLog.attachScreenshot();
if ($(this.contextMenu.activePopover).isDisplayed()) {
return true;
}
}
return false;
}

 

进阶参考文档:

https://segmentfault.com/a/1190000009556665

https://www.cnblogs.com/tianma3798/p/6653936.html

posted @ 2021-11-16 12:29  rmticocean  阅读(487)  评论(0)    收藏  举报