互联网服务端接口自动化测试

在飞速发展的互联网时代,服务端测试已经成为一个重要的产品保障手段。如何在互联网公司提供稳定的服务端接口测试,各个公司实施的方法和技术也不同,今天我们就此展开讨论学习。

互联网服务端接口自动化是各个公司都需要的一部分业务,如何快速高效地完成接口测试呢?以帮助大家实现高效的接口测试为出发点,本场 Chat 包含了我在互联网接口测试领域的一些方法和心得,希望大家一起讨论和分享,内容包括但不仅限于:

  • 互联网服务端接口测试介绍;
  • 接口测试常用的工具、平台、框架;
  • 接口测试的一些问题和实践。

下图是经典的测试金字塔,服务接口测试就在中间位置,并占据着承上启下的作用,从这个图可以看出,服务服务端接口测试的重要性。

enter image description here

互联网服务端接口测试介绍

目前市场上有很多支持接口测试的工具。利用工具进行接口测试,能够提高测试效率。例如让你一天完成100个接口测试任务,你觉得你加班能否完成吗?你可能会说有工具可以帮忙呀,但不是所有工具都能支持你完成这个任务。下图是我挑选的几款工具,接下来对它们简单介绍一下。

enter image description here

1.fiddler

首先,这是一个 HTTP 协议调试代理工具,说白了就是一个抓 HTTP 包的工具。Web 测试和手机测试都能用到这个工具。既然是 HTTP 协议,这个工具也能支持接口测试。稍后文章,我们会专门介绍 fiddler 这个工具。

2.postman

这是一款 Google 工程师开发的一个插件,可以安装到 Chrome 浏览器上。支持不同接口测试请求,能够管理测试套件和自动化运行,弱点在于,自动化断言功能不强大。不能和 Jenkins、代码管理库进行持续集成测试。但是,它绝对是一个很好的半手工,半自动化测试工具。我一般在写自动化接口测试用例,会打开 postman 进行辅助测试和 Debug。这个工具稍后也会在文章中介绍。

3.wireshak

这是一款抓包工具,支持抓各种包,对 TCP、UDP、HTTP 都支持。如果做底层网络数据测试,一般都需要用到它。作为接口测试,这个软件有点不友好。因为刷新数据太快,不好定位每个操作对应的接口。所以,在这里不准备过多介绍该工具。

4.soupUI

这是一款提供有开源免费版和企业收费版的软件。在国外的接口测试中,使用较多。该工具能够支持接口自动化测试和接口性能测试,也支持和 Jenkins 做持续集成测试。了解一下就可以,可以下载一个社区免费版,做一个 Demo 试试。

5.Java 代码做接口测试

为什么要用代码做接口自动化测试呢?一些工具功能是有限制,很多公司需要一些特定的功能,工具不支持,只好用代码进行开发。一般用 Java 做自动化测试,主要利用 httpclient.jar 包,然后利用 JUnit 或者 TestNG 这样的单元测试工具,进行测试用例的开发,接着在 Jenkins 上创建一个 job,进行持续集成测试。

6.Python 代码做接口测试

和 Java 一样,用 Python 做接口测试,可以利用一个功能强大的第三方库 Requests,它能够方便地创建接口自动化用例。Python 下的单元测试框架,一般采用unittest。生成测试报告,一般选择 HTMLTestRunner.py。同样,可以结合 Jenkins 做持续集成测试。

7.LoadRunner

不要以为 LoadRunner 只能做性能测试,它同样可以做接口自动化和接口压力测试。只是我们很多人,不会利用 LoadRunner 的函数,设计接口测试用例。

8.JMeter

JMeter 同 LoadRunner 一样,都以性能测试出名,一般用 JMeter 也是做接口性能测试。例如 Java+Jmeter+Ant+Jenkins 做接口性能监听测试。JMeter 如何做接口测试,可以查阅官方文档和 CSDN 博客专栏《JMeter 性能测试》 。

上面说了这么多工具,基本覆盖了接口功能测试、接口自动化测试、接口性能测试。这里提一下,推荐 Python 语言下的一个性能测试工具 Locust。自己百度并安装下,很简单的 Web 界面,作为一个轻量级的协程测试工具,感觉很不错。

服务端测试也应该具备一些计算机基础知识的能力,例如下面几个领域的知识。

  • 5
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值