zoukankan      html  css  js  c++  java
  • selenium元素定位Xpath,Contains,CssSelector

    最近有人问到定位问题,基本上我用以下三个方法可解决,但不同的项目使用方法不一样。以下为自己所用的简单记录说明

    1、Xpath

    经常使用且最能解决问题的定位

    driver.findElement(By.xpath("//button[@seleniumpath='shareBtn']")).click();
    driver.findElement(By.xpath("//div[@seleniumpath='shareBtn']")).click();

    很多人喜欢用这样的定位方法,不推荐使用,如:
    driver.findElement(By.xpath("//div[@seleniumpath='shareBtn']/div/[3]div[2]/table/tr/td/div[3]/button[2]")).click();
    定位表达式越简单越好,太复杂一旦js改变或者html改变则整个项目基本就会重写。因此需要如下定位可辅助实现增加效率

    2、Contains
    中文和英文项目都使用的定位方法。--英文为例(如图)
    driver.findElement(By.xpath("//div[contains(text(),'modifyFilterTest002')]")).click();

    3、CssSlector

     使用框架:react

    在此框架上我们使用CssSlector来定位非常方便,但如果框架改变我们则需要根据框架来改变我们的定位方式

    driver.findElement(By.cssSelector("#loginForm > div.form-group.username.control-group > div > input")).sendKeys(user.getEmailAddress());
    #loginForm > div.form-group.username.control-group > div > input --使用操作方法获取
    user.getEmailAddress()--bean中初始化get方法,获取来源为test case的email地址

    操作方法:

     更多交流关注自动化分享群:537188253

     

    
    
  • 相关阅读:
    轻松背后的N+疲惫——系统日志
    Wcf实现IServiceBehavior拓展机制
    一个迭代小算法,根据指定的个数对下标进行分组
    SqlServer 游标用法
    DataView RowFilter
    Asp.net Repeater 排序
    asp.net 导出Excel
    C# 导出Excel(csv )
    C# 上传图片
    C# 调用外部.exe文件
  • 原文地址:https://www.cnblogs.com/yoyoblogs/p/6548602.html
Copyright © 2011-2022 走看看