37手游测试实习笔记
4.16
1.注意测试用例编写的规范性,设计测试用例时的思维发散性(重点注意异常场景的考虑:弱网、重复请求、并发请求、缓存cookies等)
2.接口地址注意需要精确到路由
4.19
1.为什么每次在app中的操作都会出现重复相同的POST请求?
已解决:这个POST请求属于事件上报请求,目的是上报用户的动作,绝大多数场景都会触发事件上报
2.如何能在charles抓到的大量包中对SDK相关接口进行定位?
已解决:SDK相关的接口建议从域名上去定位,常见域名有s.api.37.com.cn、s-api.37.com.cn、m-api.37.com.cn、m.api.37.com.cn、spay-api.37.com.cn、mpay-api.37.com.cn
4.21
问题部分
1.灰度测试是什么?
已解决:灰度测试指的是在同一个时间段内,存在两个不同的应用版本,一个版本叫做黑色版本(灰度版本),而另一个版本叫做白色版本(线上版本)。
通过观测两个同时存在的版本的表现来调整黑色版本和白色版本的比例,如果一切顺利,渐渐地就把所有用户的应用从黑色版本过渡到白色版本。而这种通过共存黑白版本的手段进行测试的过程就叫做灰度测试或灰度发布。
2. Charles中如何将S层active延迟6秒返回
已解决:请求延迟返回可以使用charles的功能:Proxy-->Throttle Settings-->Round-trip latency(ms)功能,详情可参考:https://blog.csdn.net/a836586387/article/details/97617026
3.37SDK,母包,渠道包的区别?
已解决:37SDK是三七自己开发的工具包,包含登录,支付等等代理功能;母包=游戏+37SDK,属于自营业务;渠道包=游戏+37SDK+渠道SDK,属于联运业务。测试需要着重关注各模块见的接口。
总结部分
1.需求实现流程中测试需要参与的内容:产品需求会(开发测试参与)->技术方案(开发),测试方案(测试)-> 同步排期 -> 测试完成 -> 代码测试,线上回归测试。
#特别注意#:测试的进度的实时报告;测试中发现风险反馈给产品;
2.测试的主要需求方:产品(SDK),运营(活动)
3.在Tapd中提BUG的规范:a.标题明确问题; b.BUG要素齐全(如:优先级,严重程度,指派对象.....); c.日志和cURL的明确; d.复现的步骤明确(复杂的需附上录频)。
参考文章:https://37wiki.37wan.com/pages/viewpage.action?pageId=13205591
4.测试报告需要具有规范,格式可参考前辈的模板(参考文章如上)。
5.母包测试前期准备的三步骤(改对应内容;打包勾选上传下载,手机根目录建立名为sqwan-test的文件夹)属于母包测试规范化操作,熟练使用即可。
6.每个母包的gid属于特有标识,渠道的gid方便区分渠道标识,两者并无含属关系。
7.BUG的流转流程(看海玲姐的乐享文档)
4.22
1. 权限申请
步骤总结:工具软件打开包体 > 打开.xml后缀的文件 > 利用查找功能看文件是否有READ_SMS关键字(若有,联系开发删掉)
【技术类型:规范化操作】
2. 废弃插件检查
步骤总结:SDK确定为插件版(问运营的兄弟) > 工具软件打开包体 > 在AndroidMenifest.xml文件中查找 FolatWindowsService|SQPushReceiver|GameTipAlarmReceiver > 删除它们
【技术类型:规划化操作】
3. 版本检查(模糊)
步骤总结:查看版本号 > 对照版本号的表格 > 按照对应SDK版本进行测试
【技术类型:练习+经验】
4. 抓包检查接口
步骤总结:测试机中安装SDK > Charles连接测试机 > app中进行相应操作 > Charles中抓对应接口查看并分析
【技术类型:Charles的使用+对接口的熟悉】
5. 截图
步骤总结:在游戏中验证悬浮球的截图功能
【技术类型:规范化操作】
6. 生命周期检查(模糊)
步骤总结:母包打包上传下载(开启母包测试) > 在AS中可看到日志,游戏中也有toast可看
【技术类型:待定】
7. 强更和政策相关(模糊)
能正常安装更新|合乎政策
8. 初始化
步骤总结:用fiddler对SDK进行延迟操作 > 查看接口调用是否合乎顺序,调用一次active后没有再调用
【技术类型:fiddler使用+规范化操作】
其他扩展:enter是进服时调用的接口;接口参数中pid=1是自营,pid=46是IOS的,其它值代表其它渠道;md5签名方式
4.26
1.charles的接口延迟操作没有fiddler方便,但是也能实现
2.charles不能抓取真机的https请求,如果开启了抓取会导致游戏异常。
4.27
1."检查研发是否校验支付金额和商品iD",需要将运营给的母包打一个特殊版本的包,打完之后的包,无论你调起金额为多少的订单,都只需要支付1元,支付完成后,若研发发货为你选择的金额的物品,则研发没有进行校验;若研发不发货或发10个钻石(元宝),则研发有校验实际支付的金额。
2.生命周期接口检查中的选接不用关注,关注必接部分即可。
4.29
问题部分
1.母包测试中提交角色信息接口enter时有时无
已解决:只在创建角色时调用了enter,后续进服没有调用,算是BUG
2.母包测试进入游戏后没有上报reportDevDuration接口
已解决:enter接口的调用是reportDevDuration接口调用的前提条件,没有enter自然没有reportDevDuration的调用。
总结部分
1.遇到接口反常不清楚的地方可以用控制变量法确定接口出现的逻辑顺序,从而复现出接口,确定异常出现的位置。
2.在手机存储根目录建立名为sqwan-test的文件夹,在Android Studio中可查看日志(可通过sqsdk过滤)的目的是为了让AS中的日志信息更全面。
3.需求流转中的抄送人填写源哥,测试完记得填写测试报告和更新状态