前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >谁才是接口测试工具的"C位"?

谁才是接口测试工具的"C位"?

作者头像
吾非同
发布2020-10-23 15:06:12
8150
发布2020-10-23 15:06:12
举报
文章被收录于专栏:吾非同

谁才是接口测试工具的"C位"?

接口测试是测试过程中非常重要的一种手段,这篇文章--接口测试基础全知道 已经跟大家分享了接口测试简单的相关知识。

今天就继续跟大家讲一下接口测试的工具,因为常常被大家问到接口测试工具该如何选择,谁才是接口测试最好用的工具,哪种工具是必须要学习的,以及测试工具该如何学习”。

01

常见接口类型

首先,在工具之前,我们先了解一下接口的常见类型:

webService接口:它是简单对象访问协议(soap)通过http传输,

SOAP=RPC+HTTP+XML,即采用HTTP作为通信协议,RPC(Remote Procedure Call Protocol 远程过程调用协议)作为一致性的调用途径,XML作为数据传送的格式,从而允许服务提供者和服务客户经过防火墙在Internet上进行通信交互,请求报文和返回报文都是xml格式,常使用测试调用工具有SoapUI、jmeter、loadrunner等。

http api接口:基于http协议,一般通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,请求方法最常见的为get和post方法,常见的测试调用工具有postman、RESTClient、jmeter、loadrunner等。

02

前端和后端

前端:对于用户来说,我们能看到的一般都是属于前端部分,WEB端的网页网站,对于app端来说呢,就我们使用手机app,包括它的页面UI,动画插件等。前端作用就是显示页面和数据,做一些简单的校验,比如说非空校验等。

后端:在前端页面上的各种操作后的各种控制处理,比如访问数据库,进行数据更新等,比如购物,你在付款时,后端去控制扣你的余额。

那前端和后端是怎么交互的呢,就是通过接口。

03

测试工具C位之争

Fiddler

Fiddler被称为抓包神器,它是一个http协议调试代理工具,它能够记录互联网之间的http协议通信,可以设置断点,查看所有“进出”Fiddler的数据(如cookie,html,js,css等文件)。

Fiddler 要比其他的网络调试器要更加简单,操作便捷,格式显示清晰,这个工具也可以进行接口测试,但是不能写断言,只能用composer构造HTTP请求,需要人工确认返回结果的正确性。

Postman:

是谷歌开发的一款接口测试软件,它使用简单,功能强大,能够发送任何类型的HTTP请求 (GET, HEAD, POST, PUT..),可以进行文件上传、响应验证、变量管理、环境参数管理,还可以批量管理和运行用例,并支持用例导出、导入,可以进行接口的自动化测试。

缺点是自动化断言不够强大,不能和jenkins、代码管理库进行持续集成测试。

soapUI:

是一个开源测试工具,通过soap/http来检查、调用,实现Web Service的接口和性能测试。该工具既可作为一个单独的测试软件使用,也可利用插件集成到Eclipse,maven2.X,Netbeans 和intellij中使用。

soapUI pro是soapUI的商业非开源版本,实现的功能较开源的soapUI更多,国外公司使用较多。

Jmeter:

是一款100%纯Java编写的免费开源工具,主要用来做性能测试,但也可以做接口测试,配合后置处理器与断言,可以满足大部分的接口测试场景,JMeter提供了BeanShell编程能力,可以写出比较灵活的测试脚本,通过jmeter+ant+jenkins可以实现接口和性能自动化测试。

代码实现

java代码实现接口测试:java可以通过httpclient.jar包,利用JUnit或者TestNG这样的单元测试工具进行用例编写,结合jenkins实现接口持续集成测试。

python代码实现接口测试:python可以利用强大的第三方库Requests实现接口用例编写,结合unittest单元测试框架,生成测试报告,也可以和jenkins做持续集成测试。

为什么要代码实现接口测试?

工具有限制,很多测试场景工具很难模拟,场景和数据构造复杂,代码可以实现接口,统计结果展示灵活。自己写测试框架与代码。

说了这么多,测试工具各有优劣,要根据公司和项目的需求灵活选用,通常中小型项目推荐使用postman和jmeter,对于大型项目还是利用代码实现。

在看和转发

都是一种支持

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

本文分享自 吾非同 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
持续集成
CODING 持续集成(CODING Continuous Integration,CODING-CI)全面兼容 Jenkins 的持续集成服务,支持 Java、Python、NodeJS 等所有主流语言,并且支持 Docker 镜像的构建。图形化编排,高配集群多 Job 并行构建全面提速您的构建任务。支持主流的 Git 代码仓库,包括 CODING 代码托管、GitHub、GitLab 等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档