1.简介 按宏哥计划,本文继续介绍WebDriver关于元素定位大法,这篇介绍定位倒数二个方法:By xpath.xpath 的定位方法, 非常强大.  使用这种方法几乎可以定位到页面上的任意元素. 2.什么是xpath? xpath 是XML Path的简称, 由于HTML文档本身就是一个标准的XML页面,所以我们可以使用Xpath 的用法来定位页面元素.XPath 是XML 和Path的缩写,主要用于xml文档中选择文档中节点.基于XML树状文档结构,XPath语言可以用在整棵树中寻找指定的…
1.简介 按宏哥计划,本文继续介绍WebDriver关于元素定位大法,这篇介绍定位倒数二个方法:By xpath.xpath 的定位方法, 非常强大.  使用这种方法几乎可以定位到页面上的任意元素. 2.什么是xpath? xpath 是XML Path的简称, 由于HTML文档本身就是一个标准的XML页面,所以我们可以使用Xpath 的用法来定位页面元素. XPath 是XML 和Path的缩写,主要用于xml文档中选择文档中节点.基于XML树状文档结构,XPath语言可以用在整棵树中寻找指定…
1.简介 CSS定位方式和xpath定位方式基本相同,只是CSS定位表达式有其自己的格式.CSS定位方式拥有比xpath定位速度快,且比CSS稳定的特性.下面详细介绍CSS定位方式的使用方法.xpath定位是"屠龙刀",那CSS定位就是"倚天剑了",相对CSS来说,具有语法简单,定位速度快等优点. 2.CSS定位优势 CSS定位是平常使用过程中非常重要的一种方式.它与xpath定位有诸多类似的地方,但是无论从性能还是语法上来说CSS都是比较有优势的.1.一般情况下定…
1.简介 按计划今天宏哥继续讲解css的定位元素的方法.但是今天最后一种宏哥介绍给大家,了解就可以了,因为实际中很少用. 2.常用定位方法(8种) (1)id(2)name(3)class name(4)tag name(5)link text(6)partial link text(7)xpath(8)css selector(今天讲解) 3.自动测试实战 以百度首页为例,将CSS的各种定位方法一一讲解和分享一下. 3.1大致步骤 1.访问度娘首页. 2.通过CSS定位到元素,点击一下. 3.…
1.简介 Apache Maven是一个软件项目管理和综合工具.基于项目对象模型(POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件.由于现在企业和公司中Java的大部分项目都是基于Maven,  因此宏哥为了照顾到企业或者公司用的java项目中用到maven的童鞋或者小伙伴们,这里也简单的介绍和分享一下.在Maven项目中使用Selenium. 非常简单. 2.在eclipse中搭建maven 2.1安装maven 1.下载maven的bin,在apache官方网站可以下载…
1.简介 按宏哥计划,本文继续介绍WebDriver关于元素定位大法,这篇介绍By ClassName.看到ID,NAME这些方法的讲解,小伙伴们和童鞋们应该知道,要做好Web自动化测试,最好是需要了解一些前端的基本知识.有了前端知识,做元素定位会很轻松,同样写网络爬虫也很有帮助,话题扯远了,回到Selenium自动化测试.tagName是DOM结构的一部分,其中页面上的每个元素都是通过输入标签,按钮标签或锚定标签等标签定义的.每个标签都具有多个属性,例如ID,名称,值类等.就其他定位符而言在S…
1.简介 按宏哥计划,本文继续介绍WebDriver关于元素定位大法,这篇介绍By ClassName.看到ID,NAME这些方法的讲解,小伙伴们和童鞋们应该知道,要做好Web自动化测试,最好是需要了解一些前端的基本知识.有了前端知识,做元素定位会很轻松,同样写网络爬虫也很有帮助,话题扯远了,回到Selenium自动化测试. 2.常用定位方法(8种) (1)id(2)name(3)class name(今天讲解)(4)tag name(5)link text(6)partial link tex…
1.简介 前面宏哥介绍了几种关于时间等待的方法,也提到了,在实际自动化测试脚本开发过程,百分之90的报错是和元素因为时间不同步而发生报错.本文介绍如何新建一个自定义的类库来解决这个元素同步问题.这样,我们在写脚本的时候,就直接调用该类方法就可以. 2.项目实战 2.1代码设计 1.在新包library下新建我们的自定义类方法.如下图所示: 2.2参考代码 package library; import org.openqa.selenium.By; import org.openqa.selen…
1.简介 上一篇中介绍了DataProvider如何传递参数,以及和一些其他方法结合传递参数,今天宏哥接着把剩下的一些常用的也做一下简单的介绍和分享. 2.项目实战1 @DataProvider + 方法:此示例显示如何根据测试方法名称传递不同的参数. 2.1代码设计 2.2参考代码 package library; import java.lang.reflect.Method; import org.testng.Assert; import org.testng.annotations.D…
1.简介 今天这一篇宏哥主要是结合实际工作中将遇到的测试场景和前边两篇学习的知识结合起来给大家讲解和分享一下,希望以后大家在以后遇到其他的测试场景也可以将自己的所学的知识应用到测试场景中. 2.测试场景 测试多个用户的账户登录.假如宏哥有50个用户,需要测试登录.你会怎么测试呢.第一个肯定是写50个测试脚本去验证登录.第二个就是采用DDT,把用户名和密码写到一个表格里,然后依次从表格读取去运行这个登录用例.很显然第一个不可取,如果有1000个,10000个...那你不得累死,很有可能最后落个费力…