目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
1、第三方支付功能测试点
支付流程:
我们在测试一个功能时,需要先了解一下这个逻辑,而订单支付逻辑普遍都会有以下内容:
1)创建本地唯一订单号;
2)去调用支付,在支付平台生成一个支付订单;
会返回一个支付凭证(payInfo)
支付订单号在回调方法中会拿到
3)此时待支付状态下,支付平台回调通知接口;
在本地保存待支付订单信息(此时有两个订单记录:一个本地订单,一个支付平台的订单,两个ID关联)
4)用户根据收到的支付凭证发起支付(只需要管支付成功的,不成功可以当成忽略)
5)支付平台回调通知接口(支付成功)
更新支付订单
更新本地订单
后续操作
6)主动查询订单状态
更新支付订单
更新本地订单
后续操作
退款或体现(不做具体阐述)
实际遇到支付的异常测试点:
上面的内容了解即可,大部分内容项目熟了就知道了,很多时候具体项目具体分析。下面的异常测试点大多是我亲身经历过的容易出现异常的情况。
具体测试场景:
1)连续访问2次(或以上)支付接口,在第一次访问未回调完成时,第二次访问需要做限制;
可能出现的问题:直接返回第二次的结果,而第一次就可能是成功的,只是第一次请求返回的结果被第二次请求返回的失败结果所覆盖;
2)连续访问回调订单接口(向支付平台提交支付请求接口),生成的多个签名,需要校验订单返回的是否是最新的签名;
可能出现的问题:使用前面生成的一个签名去支付,会报错;
3)一个订单反复提交支付再返回,退出支付再次调取支付只允许生成不同的签名,这个根据需求;
4)需要校验1个签名只能支付1次,这个根据需求;
5)支付签名的校验,这个看需求及个人。如:异常/特殊符号等;
6)支付0元/0.01元/0.001元;
7)支付负值;
8)支付回调超时情况后端处理:一个合理的文案。方法:加挡板/断点;
9)注意一下消息回调,如果是第三方支付系统,通常会有消息的异步回调。
如:支付后,会在一定时间内无限循环查询接口,最后会回传成功或失败,但是订单不会直接知道这个结果,系统需要再次访问一个接口了解支付的最新状态才能知道订单是否支付成功;
2、贷款知识面试题
1)假如要你测试6个月期限的p2p借款产品,你应该怎么设计案例,说出测试点?
回答思路:1站在用户的角度测试,用户怎么用,你就怎么测试。2 一个人扮演多种角色测试。 3多想出一些异常场景。
借款产品投标结束日T+7时,满标和不满标的情况。
借款产品投标结束日T+7前,产品提前满标情况
产品成立后,每个月还款日前,检查系统有没有发出邮件,短信,站内信通知借款人充值到平台账户。
在每月还款日,借款人充值用来还款时,充值资金足够、不足够、不充值情况,查看系统如何处理。充值资金不足或者没有充值时,系统应该有罚息。
借款人提前还清余款场景,有些产品不支持提前还款,有些产品要满一定期限才可以提前还款(提前还款有一定手续费)。
这些都是要关注的测试点。(自己要扮演借款用户去操作提前还清余款,然后扮演后台管理员去审核,然后又扮演投资人用户去检查虚拟账户的资金到账情况)
最后一期借款人还清资金时,去后台页面查看借款产品状态,应该已正常结束。再去前台页面搜索,应该无该借款产品了。 (或者补充说:去数据库里查看此借款产品的状态)
2)你们这个P2P上线了吗?能查吗?项目花了多久时间,预计多久完成?
回答:
两种方案:
还没上线,查不了,这个是新项目,计划半年时间完成,但是因为中途有出现一些问题没有解决完毕,所以现在还没有在预计时间内完成。
大家写的项目名在网上确实能查出来,就说上线了,能查到的。(面试官其实不一定会去查)
3)实名认证你们是怎么测得?调取什么平台的资料?
实名认证接口:
银行卡实名认证(调用银行接口,验证卡号,姓名,身份证号码,手机号码。需要利用到手机接收到的验证码)
身份证实名认证(全国公民身份证号码查询服务中心,或者直接说公安接口)
4)P2P你们也测试后台管理吗?个人芝麻信用积分是调取哪里的资料?
测试后台管理:
后台也测,但是我主要测试前台,我的关注点是前台,后台只是拿来用,能配合前台正常走完流程就行。
后台主要对前台进行管理,主要有贷款管理,资金管理。
贷款管理:可以查看投资人的投资情况,也可以查看借款人的借款产品,对借款产品进行管理。比如审批,每期的还款提醒,预警等。
资金管理:管理查看用户的充值,审批用户的提现过程。
芝麻信用积分:调用的是支付宝的接口,芝麻信用:调用的是支付宝那边的接口(支付宝提供这样的芝麻信用服务,每查一次收取大概0.1元)
5)P2P功能测试你们一般做几轮?
回答:
中型版本(大修改,一个月上线一次):
测试一般分2轮:第一轮:5天;第二轮:3天;回归测试2天;(共10个工作日)。(一个月工作日22天,需求分析评审,编写测试用例等等一般占用整个版本时间的一半,或者少个几天)
小型版本(小修改,两个星期一次):一轮测试3天,回归测试2天。
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
成功属于那些敢于挑战、勇于追求梦想的人。无论前方有多少困难,只要我们保持坚韧不拔的信念,就一定能够创造属于自己的辉煌。
无论身处何种境地,都要相信自己的潜力和能力。只要我们勇敢追求,积极奋斗,就一定能够攀登成功的巅峰,实现自我价值的最大化。
生命中的每一次挑战都是塑造自我的机会,只有勇于面对困难,才能突破自我,实现更高的目标。奋斗吧,让梦想照亮前行的道路!