java+标签定位_selenium+java 元素定位

一、单个元素定位:

以百度查询为例,如图:

ee0f11a5f027f571e9b483a9ae8e53aa.png

1.id定位,findElement(By.id(" "))

driver.findElement(By.id("kw")).sendKeys("新闻");

2.name定位,findElement(By.name(" "))

driver.findElement(By.name("wd")).sendKeys("新闻");

3. className定位,findElement(By.className(" "))

driver.findElement(By.className("s_ipt")).sendKeys("新闻");

4. xpath定位,findElement(By.xpath(" "))

driver.findElement(By.xpath("//*[@id='kw']")).sendKeys("新闻");

5. cssSelector定位,findElement(By.cssSelector(" "))

driver.findElement(By.cssSelector("#kw")).sendKeys("新闻");

6. tagName定位,findElement(By.tagName("input"))

driver.findElement(By.tagName("input")).sendKeys("新闻");

注:此种方法一般是用来定位一组元素的,单个写一般都会报错;

073b94ae7bc154f512ec9c280bbcef64.png

7. linkText定位,findElement(By.linkText(" "))

driver.findElement(By.linkText("地图")).click();

注:此种方法是专门用来定位文本链接的;

8. partialLinkText定位,findElement(By.partialLinkText(" "))

driver.findElement(By.partialLinkText("图")).click();

注:此种方法是用来模糊定位文本链接的;

定位一组元素

driver.findElements(By.name("SL")).get(n).click();

注:唯一区别就是findElements,以及具体的哪个元素get(n),其他的和单个定位一致;

即元素定位的方式就是单个定位的方式,可以用name、id等;get(n)其中n是从0开始;

鼠标悬停

1 Actions action = newActions(driver);2 action.clickAndHold(driver.findElement(By.linkText("设置"))).perform();

代码:

1 packagese_11;2

3 importorg.openqa.selenium.By;4 importorg.openqa.selenium.WebDriver;5 importorg.openqa.selenium.firefox.FirefoxDriver;6 importorg.openqa.selenium.interactions.Actions;7

8 public classfuHe_05 {9 public static void main(String[] args) throwsInterruptedException{10 //创建驱动

11 System.setProperty("webdriver.gecko.driver", "C:\\ProgramFiles\\Mozilla Firefox\\geckodriver.exe");12 WebDriver driver = newFirefoxDriver();13 //输入网址

14 driver.get("http://www.baidu.com");15 //鼠标悬停

16 Actions action = newActions(driver);17 action.clickAndHold(driver.findElement(By.linkText("设置"))).perform();18 //定位

19 driver.findElement(By.linkText("搜索设置")).click();20 Thread.sleep(1000);21 //定位组元素

22 driver.findElements(By.name("SL")).get(1).click();23 int num = driver.findElements(By.name("SL")).size();24 for(int i=0;i

31 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值