接口测试步骤和场景分析,其实很简单~~

01、接口测试原理

我们所说的接⼝测试就是开发⼈员把这个接⼝实现了,他需要去验证这个接⼝的实现是否正确。

但是这是⼀个后台的功能,这个开发也是⼀个后台开发,他去验证接⼝的时候,他不会想让前端⼈员介⼊,因为让前台⼈员介⼊的话会⽐较⿇烦。

那么他就需要⼀个⼯具来模拟前端界⾯。(前端其实就是提供⼀个窗⼝,既能让⽤户输⼊数据,并且还可以查看结果。)

02、接口测试实现

实际上我们做接⼝测试,还是“输⼊—处理—输出”这样的模式。

⽤户输⼊⼀串数据,然后让这个接⼝或者让这个后台功能来处理,然后检查输出结果跟期望是否⼀致。

这个其实也就是我们所说的⿊盒测试。也是我们做测试的⼀个常规的思路。

⽤户输⼊⼀串数据,然后让系统去处理,然后我们再去检查结果 跟期望是否⼀致。

功能测试是这么做的,接⼝测试实际上还是这么做。

但是相对功能测试⽽⾔,接⼝测试有⼀个⽐较明显的区别,就是输⼊不再是界⾯的,⽽是⼀个基于HTTP的请求;输出也不再是界⾯,⽽是 基于HTTP的响应。所以需要通过请求和响应分别来输⼊我们的数据以及检查我们的结果。

03、接口测试用例

其实接⼝测试和的功能测试是⾮常相似的,功能测试怎么做,接⼝测试还是怎么做。

功能测试⽤例,最核⼼的三个部分就是:输⼊、操作步骤和预期结果。

接⼝测试⽤例,其实主要的也就是这么三个部分。平时所说的测试⽤例设计⽅法,也就是对输⼊项进⾏各种不同的取值,然后再做组合。

拿登录来说,登录功能有⽤户名和密码,那⽤户名, 有正确的⽤户名和错误的⽤户名两种情况,密码有正确的密码和错误的密码两种情况。⽤户名和密码在⼀起就会产⽣⼀些组合:

1)⽤户名正确,密码正确;

2)⽤户名正确,密码错误;

3)⽤户名错误,密码的正确;

4)⽤户名错误;密码错误;

输⼊时,选择不同的数据组合会产⽣不同的测试场景,每⼀个场景都需要执⾏⼀遍。

功能测试是这么去做的,但是接⼝测试没有界⾯,也就没有办法输⼊,怎么办?

接⼝测试⾥有个东西叫参数,这个参数就对应了功能测试⾥的输⼊项。

所以,接⼝测试⽤例其实也就是对输⼊参数,做⼀个划分然后再做组合,形成接⼝测试⽤例。每⼀组测试⽤例执⾏后,肯定会得到不同的结果。

⽐如正确的⽤户名和正确的密码,结果是登录成功;错误的⽤户名或错误的密码,结果是 登录失败。那么只要思考,如何将参数取值和测试结果应⽤在⼯具中,这个问题就解决了。

04、接口测试工具

接⼝测试⼯具有很多,⽐如soapUI,postman,jmeter等。⼯具其实只是⼯具⽽已。

做接⼝测试⼀定要明⽩接口测试流程。

05、接口测试流程

1)设计操作步骤

请求,有⼀些请求是是单独的,有些请求是多个请求前后有联系的,这种情况就需要创建关联,那么我们需要了解请求的格式,规范以及如何做关联。soapUI,postman,jmeter⾥,都有关联。

2)设计数据⽤例

将数据⽤例写到Excel⽂档⾥,然后让⼯具读取Excel。Excel⾥有⼏组数据⽤例,就执⾏⼏次。循环执⾏(⾃动化),就可以让每⼀个⽤例被执⾏⼀次,那么每⼀个测试场景也就被运⾏到。

3)断言

也就是提前将预期结果写⼊到⼯具中,让⼯具⾃动化判断结果是否正确。不同的⼯具叫法不同,soapUI和Jmeter中叫做断⾔,postman中叫做tests。

4)执⾏并检查测试结果

执⾏很简单,对测试结果进⾏分析的话就需要了解协议。知道发出去了什么,返回了什么,才能够知道,到底哪个环节出了问题。

5) HTTP协议

HTTP协议⾮常重要。清楚了HTTP协议,再去使⽤⼯具其实就很容易,按照上⾯四个步骤就⾏。为什么是HTTP协议⽽不是其他协议?因为90%的系统都是HTTP协议的。

HTTP协议包含请求和响应,请求就是⽤户的输⼊,响应就是结果。我们通过请求去找参数,然后输⼊不同的参数值,然后组合成请求,只要这个请求是合法的,那么就 可以发出去,并且能够被服务器接收。

所以,⾸先要能够判断出来什么叫做合法请求。那么就需要去了解HTTP协议的请求的组成,请求的规范,知道哪些请求项是我们所关⼼的,哪些请求项是我们⼀定要遵循的,哪些项是我 们可以删除的。

06、接口测试JMeter

其实哪个⼯具都可以,但是jmeter有两个好处:

它是中⽂版的,学习成本较低,postman和soapUI都是英⽂版的。

jmeter 既可以做接⼝测试,⼜可以做性能测试。

07、接口测试抓包

抓包⼯具推荐fiddler,两个优势:

1、简单好⽤

2、fiddler抓包后可以直接导出为jmeter脚本

⼀般情况下,做接⼝测试是有接⼝⽂档的 但是如果没有接⼝⽂档我们怎么做接⼝测试?这就需要抓包,请求我们是可以抓到的,响应如果抓不到,我们可以根据测试数据⾃⼰分析应该得到什么样的结果。

⼀个常见的问题,页⾯的输⼊框可能会有长度限制,⽐如限制只能输⼊⼗个字符,但是后台并没有做限制,这样很容易会导致出现⼀些数据库的异常,这样的问题可能在功能测试⾥⾯没办法发现,但是接⼝测试可以。

所以很多时候,接⼝测试,可以认为是功能测试的⼀种补充。它可以让我们的测试做得更深⼊,更全⾯。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
接口性能测试是一种测试软件接口在负载情况下的性能表现,以下是接口性能测试的一般步骤: 1. 确定测试目标:明确要测试的接口性能指标,如响应时间、吞吐量等。 2. 确定测试环境:确定要测试的接口的URL、请求方法(GET、POST等)、参数和格式(JSON、XML等)。 3. 设计测试场景:根据接口的功能和需求,设计不同的测试场景。例如: - 场景1:测试接口在正常负载下的性能表现。 - 场景2:测试接口在峰值负载下的性能表现。 4. 确定负载模型:确定要模拟的负载情况,如并发用户数、请求频率等。 5. 设置性能测试工具:选择合适的性能测试工具,如JMeter、LoadRunner等,并进行相应的配置。 6. 配置测试脚本:根据设计的测试场景和负载模型,配置性能测试脚本。例如: - 设置并发用户数、请求频率等参数。 - 编写脚本逻辑,模拟用户行为和请求。 7. 执行性能测试:运行性能测试工具,执行性能测试脚本,模拟负载并记录性能数据。 8. 监控和调优:监控接口的性能指标,如响应时间、吞吐量等,并进行必要的调优。可以根据测试结果进行优化,如调整服务器配置、优化数据库查询等。 9. 分析测试结果:分析性能测试结果,比较实际性能指标与预期性能指标的差异,确定是否满足性能要求。 10. 编写测试报告:整理测试结果并编写测试报告,包括执行的测试场景、负载模型、性能数据、分析结果和建议。 请注意,在执行接口性能测试时,需要注意合理设置负载模型,模拟真实场景的用户行为和请求频率。同时,还可以考虑进行长时间稳定性测试,以验证接口在持续负载下的表现。最后,还可以根据具体需求和业务场景设计更多的测试场景和负载模型,如测试接口的并发能力、吞吐量等。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值