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:性能测试【狭义】
    负载测试
    压力测试或强度测试
    并发测试
    稳定性测试或可靠性测试
      

 

posted @ 2023-08-06 08:40  至高无上10086  阅读(112)  评论(0编辑  收藏  举报