java接口自动化系列(01):自动化测试框架设计(入门版)
本系列汇总,请查看这里:https://www.cnblogs.com/uncleyong/p/15867903.html
先看下最终效果(gif)
前言
想必很多测试小伙伴自动化都是用的python吧?
从当前测试招聘要求可以看到,测试开发就是全栈要求,要想在职场有竞争力,就得多个技术方向逐个提升;
而和自动化、测开、性能、白盒等都相关的语言就是java,当然,这是基于很多公司项目是java来说的,
毕竟Java已经发展了近20年,丰富的周边框架打造了一个繁荣稳固的生态圈,短期内很难完全被替代;
所以,大局观上看,大家可以尝试下java自动化,除了可以自动化落地,也可以巩固自己的java基础,为提升性能、白盒等打好基础。
设计原则
1、复用性高:公共的方法提取出来
2、维护方便:可变的环境等参数,提取出来放到配置文件中
3、低耦合:灵活应用反射;数据和代码分离
4、问题追踪:必要的日志记录
5、结果展示:生成直观的测试报告
6、扩展性高
实现思路
技术栈
javase:封装、泛型、反射、jdbc等
testng:开源测试框架,是从Junit继承而来
httpclient:java提供的与服务端http接口进行交互的库
fastjson:处理json字符串、json数组
jsonpath:解析json数据
poi:操作excel
allure:测试报告
log4j:日志框架
目录结构规划
├─caseData 存放测试数据,比如excel文件 ├─logs 存放日志文件 ├─src │ ├─main │ │ ├─java │ │ └─resources │ └─test │ ├─java │ │ └─com │ │ └─qzcsbj │ │ └─autotest │ │ ├─entity 实体类 │ │ ├─testcase 测试用例 │ │ └─utils 工具类 │ └─resources 配置 └─testngXML 存放testng.xml文件
另外,这里省略了README.md,建议大家加上。
__EOF__
本文作者:持之以恒(韧)
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!