框架介绍:数据层、展示层、逻辑控制层、持久层
1、逻辑控制层
step1:testng.xml为启动入口:指定TestRun.java/testng测试类去运行, 使用开源:testng.jar,内容:注释@Test@dataProvider
运行过程中的执行步骤:
a.读取数据,step2:ExcelUtil.java这个类读去读取数据,使用的是开源:apache poi组件,读取数据层数据的时候使用一个方法,把用例中所有数据提取到这个二维数组中,这样做的好处:可以一次性吧数据读取出来,减少对文件IO操作,把数据抽离出来到二维数组之后,TestRun.java有一个测试方法test测试方法,有一个dataProvider把数据从数组里面取出来,取出来之后会进行发送请求
b.发送请求,step3:HttpReqUtil.java, 使用的是开源:apache httpclient组件,组件类中分别写了如下内容:sendGet(),sendPost()请求,header配置,请求超时配置,cookie/session配置,当调用HttpReqUtil.java得到服务器的返回值之后,进行预期值和实际值作对比
c.预期值和实际值比对,step3:用新建的工具类PatternUtii.java,这个工具中用到了:Pattern类,Matcher类, JSONPath类,这几个类中封装了几个方法,分别干了如下内容:实际值和预期值对比打印到report报告里面;实际值和预期值对比把结果存储到db数据库里面;同时还解析服务器返回值并存储;解析reqdata数据
d.接口依赖,step3:PatternUtii.java,自带:Pattern类,Matcher类 JSONPath类,内容:实际值和预期值对比–report;实际值和预期值对比–db;解析服务器返回值并存储;解析reqdata数据------做到了预期结果和实际结果的对比,解决了接口之间的依赖;
e.收集测试结果数据,step4:见持久层+表示层
2、数据层
testcase.xlsx接口用例,文件:*.xlsx
3、展示层
reportng测试报告
开源:reportng.jar
配置:testng.xml配监听
4、持久层
DbcpUtil.java数据库测试数据沉淀
自带:tr.jar
开源:jdbc.jar dbcp.jar
java:连接池原理
实体类:java:AutoLog.java
数据库做历史沉淀
描述如图所示: