Java接口自动化
1:什么是接口
对外暴露一个统一的规范
2:为什么做接口测试
1:更容易实现持续集成 2:自动化测试落地性价比更高,比UI更稳定 3:大型系统更多更复杂,系统间模块越来越多,很多团队进行开发然后集成,不断迭代,出现问题越来越多
每天集成一次系统进行回归测试,测试新集成系统有没有问题,自动化测试测试各个模块是否能通过质量验证,集成完之后再看一下整体
集成之后的系统是否通过质量验证,能够发布到线上
4:BUG更容易定位
5:降低研发成本,提高效率【BUG发现越早修复成本越低,集成之前就发现系统BUG比集成之后发现系统BUG好】
3:自动化测试开发技能树
1:JAVA基础
2:测试框架【TestNG【单元测试框架,支持持续集成功能】,HttpClient【模拟HTTP请求】】
3:MOCK技术
4:数据持久层框架【MyBatis-操作Mysql】
5:持续集成工具【Jinkins】
6:接口协议相关基础知识【HTTP协议】
4:接口自动化测试落地过程
需求阶段:
项目立项
产品设计
需求文档
研发阶段:
UI设计【感觉需求文档,原型设计】
前端开发
后端开发
测试设计
测试开发【自动化设计和编写,MOCK技术】
五项并行
测试阶段:
环境搭建
多项测试执行【功能测试,性能测试,自动化测试】
BUG修复
测试报告
项目上线:
线上回归测试【自动化过程】
上线报告
添加监控
【性能级别,运维添加CPU,内存这些】
【接口级别存活监控 1:端口号是否活着,比如监控端口号80是否存活 2:间隔10s或者1分钟调用一次接口验证是否正确返回,没有返回就发短信报警】
5:接口测试的范围
1:功能测试
等价类
边界值:规定年龄10-100 设计:9 10 11 50 99 100 101
错误推断法
因果图法
判定表驱动法
正交试验法
功能图法
场景法
2:接口测试的范围
上面功能测试设计的 8 大方法
2:异常测试
1:数据异常
null:对象为空,没有指向任何内存地址
"":空字符串,对象有值,值为空,内存指向空字符串
数据类型:年龄传int,但是我们传递string字符串,空格,特殊字符,年龄字段传递负数,也是年龄异常的一种传递-1
2:环境异常
负载均衡架构【多台服务器】【Nginx+Tomcat 比如tomcat机器4挂了的时间段怎么处理的,挂了后再起来能不能加到集群正常处理请求】
冷热备份【tomcat4挂了,能不能有其他顶上去,保持服务存活量,4挂了又活了这时候能不能成为备份机】
3:性能测试【狭义】
负载测试
压力测试或强度测试
并发测试
稳定性测试或可靠性测试
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2021-08-06 cook book:5:文件与IO+6:数据编码和处理