博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[原创] Selenium By 查找页面元素
阅读量:7048 次
发布时间:2019-06-28

本文共 983 字,大约阅读时间需要 3 分钟。

hot3.png

通常selenium By 可以通过id,class,xpath,css等定位页面元素。

id 和class比较简单,此处略....

 

介绍下xpath的常用内置函数 contains()/not (contains()), starts-with()/ends-with(), position(), last()...

代码如下

@FindBy(how = How.XPATH, using = "//span[starts-with(@id,'bn_id')]/span[contains(@class,'bn_class')]")    private List
bnSpan;
@FindBy(how = How.XPATH, using = "//div[contains(text(),'report')]")     private WebElement reportXpath;

 

@FindBy(how = How.XPATH, using = "//span[not(contains(@class,'bn_classB'))]")    private List
bnXpath;

position()--指定该div的排位

@FindBy(how = How.XPATH, using = "//li[@id='li_id']/div[position()=1]")    private List
firstDiv;

last() --指定最后一个节点,

driver.findElement(By.xpath("(//div[@class='bt_class'])[last()]"))

  

ps. 用xpath定位元素,若验证其正确与否,可在console使用方法$x(xpath).  e.g. :$x("//div[@id='ur']")

 

 

再简单说下css,个人总结其语法规则

空格后面是tag名

#后为id

. 后为class

例如 用css定位如下Yes 的button, 其值可写成

.class_6 button.btn-yes

 

 

转载于:https://my.oschina.net/xxjbs001/blog/297465

你可能感兴趣的文章
我的友情链接
查看>>
LEFT JOIN连表时,ON后多条件无效问题
查看>>
[20180423]flashback tablespace与snapshot standby.txt
查看>>
php中禁止单个ip与ip段访问的代码小结
查看>>
LeetCode-330.Patching Array
查看>>
zxing生成二维码转base64 img直接显示 Image对象转Base64码(java)
查看>>
xfire冲突问题解决(maven配置)
查看>>
C#面向对象(三)接口实现多态
查看>>
POJ 3069 Saruman's Army 【贪心】
查看>>
Linux下用Java获取本机IP
查看>>
HTML标签
查看>>
关联规则中的支持度与置信度
查看>>
轻松搭建持续集成工具jenkins
查看>>
剑指offer四:链表中倒数第k个结点
查看>>
web 前端开发学习路线
查看>>
Eclipse的Spring库导入
查看>>
velocity 判断 变量 是否不是空或empty
查看>>
【leetcode】123. Best Time to Buy and Sell Stock III
查看>>
角色设计的特点
查看>>
sublime text格式化json快捷键
查看>>