前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一步一步学做测试工具(Spring Boot版)之四

一步一步学做测试工具(Spring Boot版)之四

作者头像
周辰晨
发布2020-06-03 10:44:39
7330
发布2020-06-03 10:44:39
举报
文章被收录于专栏:软件测试架构师俱乐部

一步一步做工具系列很久没有更新了,因为小编旧病复发----懒癌真是难以根治。是不是很像此刻看文章的你,想学习想进步,但就是放不下抖音、王者荣耀。2020年疫情导致大环境不好,到处都在降薪裁员,但是小编身边还是有不少优秀的小伙伴通过不断的学习,最终拿到大厂P7+的岗位,年薪直接翻倍。学习才是回报最大的投资,大家一起努力吧。

前三篇系列文章 一步一步学做测试工具(Spring Boot版)之一 一步一步学做测试工具(Spring Boot版)之二 一步一步学做测试工具(Spring Boot版)之三 咱们逐步实现了接口冒烟测试工具最核心的部分 -- 生成冒烟测试用例

本篇咱们把冒烟测试功能包装成API服务的形式,通过postman等工具来实现一键冒烟测试。

工具架构

如图所示

从上图可以看出MC/DC服务具有的功能为:

用户将被测的API信息(如:url、post or get、parameter)通过http的方式传给MC/DC服务

MC/DC服务根据用户传递过来的被测API parameter生成符合MC/DC规则的一组 parameter

MC/DC服务再分别使用MC/DC parameter1、parameter2...对被测API进行http请求操作

MC/DC服务将接收的被测API的返回结果整合后,再返回给用户

简单来说,冒烟测试工具的核心就是MC/DC服务

1.接收用户传递信息

2.生成MC/DC规则的测试用例组

3.http请求被测API

4.整合被测API返回值

5.返回给用户测试结果

代码实现

看过本系列文章(Spring Boot系列一、二、三)并且跟着动手实践的小伙伴,应该已经掌握了生成MC/DC测试用例以及http请求的代码。

生成MC/DC规则的测试用例组(服务2)

McdcService 已经实现了生成MC/DC规则的测试用例组

http请求被测API(服务3)

当然前面是在单元测试中实现的http请求,咱们把这部分代码挪到service模块里来,稍加改造变成HttpService,用来请求被测API,实现http请求被测API

整合被测API返回值(服务4)

因为是循环使用MC/DC规则的一组请求值,所以也就对应着一组返回值。整合思路:将两两对应的请求值与返回值作为一组json元素存入json数组,最终输出一个json数组。 [{request:parameter1, response:response1},{request:parameter2, response:response2}...] 实现数据模型代码如下:

McdcBody定义了一组两两对应的请求值与返回值。 McdcResponse定义json数组。 @Data :注在类上,提供类的get、set、equals、hashCode、canEqual、toString方法。 @AllArgsConstructor :注在类上,提供类的全参构造 @NoArgsConstructor :注在类上,提供类的无参构造 上面三个注解来自lombok lombok 是一个工具类库,可以用简单的注解形式来简化代码,提高开发效率。但弊端是大大降低了源代码的可读性和完整性,降低了阅读源代码的舒适度,所以不建议初学者使用,初学者还是老老实实的手动实现以上功能。 @JsonProperty:注在属性上,作用是把该属性的名称序列化为另外一个名称。例如@JsonProperty(“status”)序列化为json时,“status”作为key, {“stutus”: “success”}

接收用户传递信息(服务1) & 返回给用户测试结果(服务5)

通过一个接口服务来接收用户传递信息,并且将MC/DC 服务2、3、4串联起来,得到结果,最终返回给用户测试结果

至此整个服务就算阶段性的完成了!!!

冒烟工具使用

postman辅助

还是以查询电话区号的API为例: 启动冒烟测试工具 postman输入如下信息

MC/DC服务提供的是post服务,地址是http://localhost:8080/mcdc url为被测API的地址 method为被测API的请求方式 initialParam为被测API的正确入参 小伙伴可以仔细看看response是不是符合MC/DC规则的冒烟用例

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 架构师影响力 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 工具架构
    • 如图所示
      • 简单来说,冒烟测试工具的核心就是MC/DC服务
      • 代码实现
        • 生成MC/DC规则的测试用例组(服务2)
          • http请求被测API(服务3)
            • 整合被测API返回值(服务4)
              • 接收用户传递信息(服务1) & 返回给用户测试结果(服务5)
              • 冒烟工具使用
                • postman辅助
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档