搭建基于Eclipse+Selenium+Java+TestNG+Maven+Allure+Jenkins+SVN的Web端UI自动化自动化小笔记(一)
由于记性不好,又有许多事情,只能多做做笔记总结一下了,如有问题,烦请各位大佬指正,谢谢啦
项目组成部分
1、环境搭建
2、公共类 包
-- 提供给用例使用的操作元素的基础操作类
-- 提供给用例使用的业务基础共有类
3、工具类
1、关于浏览器操作所用到的工具类,如打开浏览器,关闭浏览器,截图等
2、为完成元素定位,将相关定位信息写在xml文档中,我们就要读取xml中的元素;我们用到testng在测试兼容性等测试的时候,自动生成testng.xml,就要用到xml写的相关方法。为此我们需要封装一对xml读取写入夫人工具类。
3、在写自动化用例的时候,我们会将测试数据存放在excel文档中,我们就会读取excel中的数据,利用TestNG中的dataprovider将数据返回给测试用例,就会涉及到读取excel的方法;而来就是当我们测试用例执行之后对测试用例的结果做断言,并将断言结果等写入excel中,这就要编写一个对excel读写等的操作类了。
4、对properties文件的读写等操作,封装成一个工具,properties可以用来做参数据替换作用,也可用来配置一些不变的数据信息,比如url等
4、pojo类
pojo类的特点: private的参数作为对象的属性,然后针对每一个参数定义get和set方法访问的接口。
没有从任何类继承、也没有实现任何接口,更没有被其它框架侵入的java对象。
常用于描述某一个事物对象,不可有行为方法
此处我们主要是描述excel中的和xml等相关事物
5、页面对象类 包
--把每个页web页面当成一个对象
--会使用到公共类中对元素的操作的封装的方法,比如点击属于这个页面的提交按钮,选择车主性质的中的下拉框等
1)将元素的定位信息配置到xml文件,封装页面对象类时直接读取xml对应的元素定位,便于配置分离,修改定位信息的时候不用修改代码。
2)元素定位的xml会涉及定义页面关键字,元素关键字等相关属性,采用关键字驱动测试的思想,完成元素定位的工作。
3)采用行为驱动测试的思量,利用基础类和元素的基础的封装,进行操作指定的元素。如对车辆信息输入的方法sendkeysBy("车辆投保信息页",“车架号输入框”,GetRadom.get7Radom());
6、用例类 具体的测试用例类 比如完成打印保险单的测试用例
7、利用log4j做好日志,日志做的时候草率的话,后期跑用例有错误的话,排查问题很麻烦,苦的是自己哦
8、监听类
1)失败用例重试
2)失败用例截图
3)失败用例的截图保存指定路径,并将截图放在报表里
9、报表功能
10、jekens持续集成