接口自动化实战-postman

1.测试模型

在这里插入图片描述
单元测试并非测试工程师的本职工作,它属于开发工程师的工作,开发进行单元测试的情况我们不知道,为了确保系统尽可能没有Bug,于是接口测试在测试工程师这里就变得由为重要了。实际工作中为菱形模型。
在这里插入图片描述
接口测试能更早的进入系统测试,当接口完成之后就可以编写接口测试用例。

2.外部接口和内部接口

内部接口就是系统内部调用的接口。比如你在网上购物时,要先登录系统,然后将商品加入购物车,再接下来支付订单。那么,从添加商品到购物车,再到支付订单,这一长串的流程之间,就是通过系统内部接口来完成的。

外部接口相对于内部接口而存在的一个概念,比如你在购物后点击付款时,页面会跳转到支付系统,等你完成支付流程后,再跳转回订单页,在这样的流程中,都会涉及系统对外的接口,还有,比如说付款工程的支付接口、配送过程的物流接口等等。

3.设计接口测试用例

所有
需要清楚的三点:

  • ,参数的含义以及来源
    你也要知道这个参数的赋值是从哪里来的,是从其他页面的返回值中得到的?还是 JS 生成的?如果是其他页面或者接口返回的,那么,是哪一个接口返回的哪个字段?

  • 参数的作用域
    参数的作用域指的是这个参数在这个接口中是做什么用的,它在哪一个访问周期里是一直存在的,它是否导致了业务逻辑分支等。比如说,这个参数是用来验证用户权限吗?它的验证算法是什么?

  • 返回值的含义
    当你需要和这个接口产生交互的时候,就可以快速地拿到对应参数的含义,完成业务逻辑上下文的参数串联了。

4.对于有接口文档,进行接口测试

post请求 url
请求头
在这里插入图片描述
直接在接口工具上面输入接口信息即可

5.对于没有接口文档,进行接口测试

先抓包,可以用浏览器抓包,页面上右键-检查,然后点Network就可以看到抓包的信息,然后再填到接口工具,比如postman。

  • post请求
    1)头部信息
    在这里插入图片描述

需求关注的请求头:Cookie,Content-Type,Blade-Auth,Authorization,token。有这些值的话需要填到postman的请求头上去。
HOST,它表示指定访问的服务器域名;
Connection 的值为 keep-alive,这表示需要持久连接;
Accept,它表示客户端可以接受的内容类型为 application/json, text/plain, / ;t
User-Agent,它说明请求是从什么浏览器发出去的;
Sec-Fetch-Site 和 Sec-Fetch-Mode,它们是 JS 中对跨域的一些设置;
Accept-Encoding 设置为 gzip、deflate、br,这表示可以支持的 Web 服务器返回内容压缩编码类型;
Accept-Language,它表示接受的语言。

在这里插入图片描述
2)入参
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3)出参
在这里插入图片描述
{
“code”: 200,
“success”: true,
“data”: {
“link”: “pig/count/video/20230206/17/3af76f7e84319f66f1c6260dc27a82c3.mp4”,
“name”: “pig/count/video/20230206/17/3af76f7e84319f66f1c6260dc27a82c3.mp4”,
“originalName”: “5.mp4”,
“attachId”: “f7cd00b1516974d42232cb12c24175b2”
},
“msg”: “操作成功”
}

4)后置处理
下个接口的入参需要用到上个接口的出参的值,写js脚本提取上个接口出参的值,然后赋值给全局变量。下个接口入参值使用{{name}}接口关联起来了。
在这里插入图片描述
5)前置处理
是在执行该接口之前需要执行的脚本,比如密码被加密了,在执行接口前需要解密,然后再请求。又比如在跳转其他url
在这里插入图片描述
在这里插入图片描述

  • get请求
    在这里插入图片描述

6.怎么形成接口自动化测试

我们将接口抓包之后,在postman上将单个接口都跑通了,一个url算一个接口,然后将多个单接口组合起来形成业务流程接口。
比如生猪点数这个业务流程,是由上传文件接口+点数接口+查询结果接口组合的。为什么要组合呢,是因为传进去的参数不同,返回的结果不同,再加上接口之间是关联的,所有需要做成业务流程接口,然后就可以实现接口自动化测试了。

7.为何还要测试脚本,开发测试框架

现在接口测试工具很多,也很方便使用,为什么还要写测试脚本,写起来困难,而且没接口测试工具看起来更直观。

接口测试工具的缺点:随着你的接口测试项目逐渐增加,你会发现越来越难以管理它的脚本,如果你接到了一个它无法完成的接口类型的测试任务,就不得不再去寻找另一个工具。所以,开发你自己的测试框架非常重要。

Python写接口测试脚本见我另外一篇博文接口自动化测试
在写脚本的过程中,还可以结合接口测试工具生成的脚本,然后修改放到自己的测试框架中。

在这里插入图片描述

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Postman是一款非常流行的API开发工具,它不仅可以用于管理和调试API接口,还可以进行自动化测试。下面我将用300字来说明如何从单接口入门到自动化测试高阶实战的过程。 首先,对于单接口入门,我们可以通过Postman来发送HTTP请求,并查看返回的响应结果。在Postman界面中,我们可以输入请求的URL、请求的方法(如GET、POST等)、请求的参数、请求头等信息,然后点击发送按钮即可得到接口返回的数据。通过这种方式,我们可以对接口进行验证,确保接口的正确性。 接下来,我们可以利用Postman的测试功能,来进一步验证接口的正确性。在Postman中,我们可以编写一些测试脚本,并在接口请求后执行这些脚本,对返回的数据进行校验。例如,我们可以通过断言来判断返回的数据是否符合预期,并在测试结果中生成对应的报告。 当我们熟悉单个接口的调试和测试后,我们可以进一步进行自动化测试的高阶实战Postman提供了一些高级功能来支持自动化测试,例如集合和环境的管理、全局和局部变量的使用、批量测试、数据驱动等。我们可以将多个相关的接口组织成一个集合,并通过批量测试来执行这些接口的测试用例。同时,我们可以通过环境变量来管理接口的不同环境(如测试环境、预发布环境、生产环境)的配置,并在测试过程中动态地切换不同的环境。 除此之外,Postman还可以与其他测试工具(如Jenkins、Newman等)进行集成,实现持续集成和持续测试。我们可以将Postman的测试脚本和集合绑定到构建或部署过程中,并通过自动化触发来执行接口测试,提高测试效率。 总结起来,通过单接口入门到自动化测试高阶实战,我们可以充分利用Postman的功能来进行接口测试。这不仅可以提高软件开发的质量,还可以节省测试的时间和资源。希望以上提供的信息对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值