支付的接口测试(支付接口测试怎么做)

网友投稿 803 2023-04-11


本篇文章给大家谈谈支付的接口测试,以及支付接口测试怎么做对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享支付的接口测试的知识,其中也会对支付接口测试怎么做进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

支付方式测试点

支付测试

引言:如今,随着非现金支付手段的不断推广和应用,“非现金社会”正在形成。非现金支付已成为日常生活中不可或缺的伙伴。那么,对于互联网产品来说,支付也是涉及到公司收入的一个重大环节。对于我们测试人员,支付测试也是测试中的重要一环。下面就结合工作中遇到的问题,来给大家介绍一下常用的支付测试。

★ 支付分类 ★

首先,根据不同维度,我们可以把支付分为不同的种类。如下图所示:

其次,一般来讲,线上支付分为两种消费模式。一种是直接支付金额,如淘宝,京东等购物网站,或是360云盘,视频会员等这种会员服务;另一种是充值购买金豆之类的虚拟币,在网站中使用虚拟币进行消费,比如游戏平台、花椒等产品。

★ 测试方法 ★

功能测试:

通过将边界值分析、等价类划分、错误推测、因果图等各种测试方法进行结合,整理出尽可能全面的测试案例,对支付功能及其相关功能进行测试,以确保整个支付流程以及涉及到支付流程的其他流程在任何情况下都能正常进行。

接口测试:

明确整个支付流程所需要调用的接口,分清楚商家和第三方支付平台的接口以及参数和请求方式。包括对接口特定参数的加密,使用异常订单号模拟支付,对服务端的校验等等。

安全测试:

支付涉及到金额方面,所以要考虑安全测试方面。支付请求的伪造、金额的恶意篡改、恶意模拟第三方接口来调用商家接口等等。这都是我们需要考虑到的问题。

★ 支付流程 ★

常见的支付流程如下图所示:

★ 测试点 ★

支付流程测试点

(比如会员服务产品,购买后会员到期时间是否正常延迟;比如购买商品,支付成功后,订单状态是否更改,商品种类和数量是否正确等等)

支付金额测试点

a) 正常金额支付

b) 金额的最小值:0.01

c) 无意义的值:0元

d) 最大金额:设置支付的最大金额

e) 银行卡或微信等,设置每日最大消费金额或者单笔最大消费金额

f) 银行卡或微信余额不足时支付

支付流程测试点

a) 正常完成支付流程

b) 调起订单后,取消订单

c) 支付中断后,继续支付

d) 支付中断后结束支付

e) 单笔订单单笔支付

f) 多订单合并支付

g) 持续点击支付,是否会出现多次购买

a) 支付宝支付

b) 支付宝网页支付

c) 微信支付

d) 银行卡支付

优惠券或折扣(有一定的优惠)

a) 支付中使用优惠券/折扣,应付金额和实际支付金额是否正确

b) 优惠券/折扣是否是必选,是否可以不选择折扣

c) 支付订单退款完成后,优惠券/折扣是否还能使用

如何做接口测试?

接口测试作为业务质量的重要保证手段支付的接口测试,是整个质量保证过程中必可不少的手段了,目前主要的测试方式包括利用工具进行测试比如postman、jmeter,还有纯代码编写测试case,测试平台,一些支持通过文件写测试用例的框架等。

为什么要做接口测试

在金字塔这样的自底向上结构中,越靠近底层,测试越稳定,所以我们投入的也应该越高;同样的,越是底层,发现问题越早、越高效,修改和维护的成本也就越低。但是单元测试目前只在一些大厂做的比较好,而且单元测试要想覆盖到的全面,需要很大的投入,一般的互联网公司这块是缺失,而由于接口测试的高投资回报比,决定其大范围的应用,互联网公司也会把中心放到这块儿。

接口测试的手段

可视化工具类

常用的接口可视化界面工具有postman,和他的情敌Postwoman,jmeter也可以做,postman可以接入Jenkins实现持续集成,而且操作方便,功能也很强大,现在互联网技术人员几乎人手必备。但是会有个问题,它的灵活性不够,在写接口测试用例的时候回有时会操作mysql、Redis,还会调用thrift,甚至需要建立socket链接,而且无法进行版本控制。

纯代码

纯代码的测试手段是能满足所有的接口测试需求,是最灵活的一种,个人认为也是最好用的一种。不同语言生态都可以实现,比如java生态们可以使用restassured、assrtj、junit来做,python生态可以使用requests、pytest来做,不过这需要编码能力,对测试人员的要求会高一些。

测试平台

通过搭建一个测试平台,在这上面写测试用例,平台一般会提供可视化界面让测试人员编写,平台的好处是可以让不懂编码的同学也能快速写出测试用例,而且可以对测试用例进行管理,控制用例执行等。

支持文件写用例的框架

还要写测试框架支持通过编写json、yaml文件编写测试用例,有框架解析文件生成测试用例,然后去执行。

接口测试的思路

接口测试用例设计主要针对输入、处理、输出进行考虑

针对输入进行设计

对于接口来说,输入就是入参,一般的参数类型数值型边界内、边界值、边界外三个方面去考虑特殊值处理不当程序异常、类型边界溢出、错误信息返回不正确字符串主要考虑字符串长度和字符串的内容空、特殊字符、数字、表情符号数组链表多个重复值、空、最大范围值结构体支付的接口测试:json、字典字段错误,字段类型错误、未包含字段、缺失字段

针对逻辑设计

限制条件数值类型限制,比如购买次数、登录次数、优惠券最大面额、订单取消次数等状态限制:比如是否登录、是否有订单等关系限制:比如好友关系、关注关系,只能查看好友或者关注人的朋友圈权限限制:比如销售只能查看和自己绑定客户数据,而管理员可有查看所有客户数据时间限制:比如未支付过20分钟订单自动取消状态转换分析比如一个出租车订单,从乘客下单、司机抢单、到达起点、接上乘客、到达目的地,发起支付,支付,评价这是一个完整的订单状态转换流程,必须按照这个次序,才能正确流转,一旦打乱其中任何一个状态,就会出现逻辑问题。接口用例可以这样设计:正常状态迁移:乘客下单,司机抢单,异常状态迁移:乘客刚下的那,司机发起支付,出现异常

针对输出设计

针对输出结果,一般情况下,接口正常处理的结果可能只有一个,但是异常的处理结果,可能会返回多种错误,那就可以针对不同的错误进行设计。接口超时,旧版本接口,废弃接口,接口设计是否合理,比如字段冗余、接口冗余、返回错误信息是否清晰明了、调用是否方便,幂等性

总结

接口测试重要的思路要明确,清晰的理解业务逻辑,至于具体的工具根据自己目前的能力选择,先去做,在做的过程中不断完善不断学习,早日提高自己的测试技能。

码字不易,欢迎大家点赞评论支持。

接口测试注意的点

接口测试作为集成测试的一部分,通过直接调用被测试的接口来确定系统在功能性、可靠性、安全性和性能方面是否能达到预期,有些情况是功能测试无法覆盖的,所以接口测试是非常必要的。

接口测试分为两种,一种是webservice接口,走soap协议通过http传输,请求报文和返回报文都是xml格式的,测试时通过工具soapUI进行测试。使用情况比较少;另一种http api接口,走http传输协议,通过路径来区分调用的方法,最常用的是get和post请求。

get请求和post请求的区别在哪里呢?网上的答案为:

1、get请求可以在浏览器中请求到,post请求的测试需要借助工具

2、get请求使用url和cookie传参,post的数据放在body中

3、post比get更安全,因为传递的参数在url上是看不到的

4、get请求的url会有限制,而post请求的数据可以非常大

5、一般get请求是来获取数据,post请求是传递数据的

其实,对于现在飞速发展的 互联网来说,上面的说法已经不严谨了。首先,post请求的参数也可以写在url里,但是这种情况不多见;其次表面上看起来,post利用body传参,比get的url传参安全,但其实只要用抓包工具(fiddler,Charles等),post的参数也是一览无余;再次,现在的浏览器非常强大,可以输入支持很长的URL,所以也不再有限制一说了。这么说来,种种区别只有最后一条是最根本的了。

 怎么来测试接口呢?根据什么来测呢?这就需要开发提供的接口文档了,接口文档和功能测试的需求说明书的功能是一样的。包括:接口说明、调用的url,请求方式(get or post),请求参数、参数类型、请求参数说明,返回结果说明。这里接口文档生成可以使用apipost接口文档生成工具。有了接口文档后,我们就可以设计用例了,一般接口测试的用例分为以下几种:

1、通过性验证,说白了就是传递正确的参数,是否返回正常的结果

2、参数组合,因为参数有必传和非必传,参数的类型和长度,以及传递时可能业务上的一些限制,所以在设计用例时,就要排列组合这些情况,保证所有情况都能覆盖到

3、接口的安全性,这个又分为几种情况:

1)绕过验证,比如提交订单时,在传递商品价格参数时,修改商品价格,就要看后端有没有验证了。或者我支付时,抓个包将订单金额一改,如果能以我改后的金额支付,那这个借口就有问题了。

2)绕过身份验证,就是某个功能只有有特殊权限的用户才能操作,那我传递一个普通的用户,是不是也能操作呢

3)参数是否加密,这个关系到一些账户的安全,比如我们在登录一些网站时,它要将我们的登录信息进行加密,如果不加密我们的信息就会暴露,危害性极大。

4) 密码安全规则,设置密码时复杂程度的校验。

4、根据业务逻辑来设计用例

用例设计完了,用什么来测试接口呢?我们可以借助一些工具,比如apipost和jmeter。apipost使用比较简单,可以在列表中选择请求方式,在输入框中输入URL,如果是get请求,直接点击发送就可以看返回结果了。

如果是post请求,会涉及到几种参数的上传方式和添加请求头、权限验证还有添加cookie等操作。apipost都可以简单实现

还有一种测试接口的工具是jmeter,用途比较广泛,不但能测接口的功能,还能对接口进行性能测试。比如:压力测试、负载测试等。在jmeter中需要创建线程组,如图:

Apipost官方链接: https://console.apipost.cn/register?utm_source=10008 关于支付的接口测试和支付接口测试怎么做的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 支付的接口测试的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于支付接口测试怎么做、支付的接口测试的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:mock ui design 工具(mock工具)
下一篇:对dubbo接口进行测试(dubbo对外提供接口)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~