自动化测试之页面元素定位
首先说明的是:我用的工具是selenium+java进行开发的
seleniumIDE是自动化测试的录制,录制属于最简单的部分,录制以后可以转换成相应的开发语言的脚本,不过建议本人自己编辑,前端h5的一些东西可以从网上了解
selenium页面元素定位:元素定位基本上常见的八种方式
selenium是驱动web的自动化测试的,基于web页面才可以进行测试的
注意:一般常用的给元素给予点击事件: .click()
传值事件: .sendkeys("传值")
1:id定位
<button id ="btn" name = "button" class="gtbtn">按钮</button>
code:
//定位id
public static void main(String[] args){
WebDriver driver = new ChromeDriver();
driver.get("http://baidu.com")
//定位页面元素
WebElement btn = driver.findElement(By.id("btn"));
btn.click();
}
2:name定位
和id的相同
还有一种简便的方法:
driver.findElement(By.name="button").click();
3:By.tagName()
该方法可以通过元素的标签名称来查找元素。该方法跟之前两个方法的区别是,这个方法搜索到的元素通常不止一个,所以一般建议结合使用findElements方法来使用。比如我们现在要查找页面上有多少个button,就可以用button这个tagName来进行查找
List buttons =driver.findElements(By.tagName("button"));
4:By.className
html中
.buttonStyle{
width:50px;
height:50px;
border-radius:50%;
margin:0%2%;
}
code:
driver.findElement(By.className("buttonStyle")).sendkeys("nihao");
4:By.linkText()
driver.findElement(By.linkText("按钮")).click();
5:By.partialLinkText()
链接部分文字
6:By.xpath:最强大的定位方式:xpath定位是最常见的也是最常用的定位
xpath:xml path
一般元素的xpath是通过火狐的插件:firebug进行操作的,直接就可以定位到xpath
基本上定位就是这些,我常用到的就是id,name,linkText,xpath