项目背景:安卓端出海休闲小游戏,基于已有项目提取、修改需求。服务端/数据库均使用原项目
全流程:
前期项目准备:
codeup:新建代码库
云效:
- 新建项目,关联已有代码库,放置文档(设计、翻译、埋点文档等)
- 为项目第一版新建迭代
- PM新建需求,设计埋点,Tech leader分发任务
- Designer:原型设计
- 运营提供翻译
临近提测:
Google Play: 联系公司负责人在GP注册app
Google Play Developer:添加测试人员的google账号
Jenkins: 为项目编写流水线,包括debug流水线和release流水线
云效:测试理解需求,编写冒烟测试用例分发给开发
PM验收需求,开发执行冒烟用例后提测
提测:
功能测试,先测稳定的模块?还是先测关联性大的模块?(此处踩坑,先把最边缘的功能测完了,导致重要的功能堆在后面)
数据同步测试,客户端与服务端交互的上传下载,这个是一个测试重点
埋点测试,翻译测试。
广告测试,由广告组的同学负责
发版前一天,功能趋于稳定:
- 回顾云效需求细节,检查有无漏测
- Jenkins 打线上release包:
- 线上release包做性能测试(monkey)
- 服务端先上线,如果有其他app共用一套服务端或者之前已有迭代的话,需要在线上release包做一些兼容测试。
- 兼容性测试完可以继续做覆盖安装测试,多语言测试等
全部没问题后准备发版:
- 云效流水线触发Jenkins job:将最新打bulid的结果传到生产环境+aab包传到Google送审+合并代码分支+群消息推送
- 云效关闭当前迭代未关闭的需求,任务,缺陷
- 云效将测试用例添加至用例库分组
- 去Google Play 查看发版是否成功,内部发测试报告
复盘 :
测试时间: 1.3-1.10
1.3之前熟悉需求设计,测试用例编写 jenkins流水线设置
1.3设置页测试
1.4收藏页测试,成就页测试服务端收藏记录
1.5数据集测试;参加测试周会,项目复盘会
1.6数据集测试,广告测试,发现服务端社区活动链接还没有做
1.7订阅测试,账号数据同步测试
1.8周末
1.9服务端上线,打点测试50%
1.10 打点 问题验收 monkey 上线 发测试报告
出问题的比较多的地方:
1.数据同步,尤其分页加载、需要累加的地方
2.调用其他项目的地方,如FB登录,谷歌支付、广告SDK等
3.该触发刷新页面的操作
4.支付
印象比较深刻的问题:
1.签到逻辑:刚登陆当时没记录,关闭app重打开才记录
2.数据同步:先产生数据后同步账号,数据进入了服务端中转表里并且没有下一步处理
3.覆盖安装:线上和线下环境同一个fb用户的userid openid token完全相同,造成数据混乱
4.分页加载排序:应该是所有数据按时间倒序展示
5.输入框加正则
晚的原因:
(无影响)monkey第一次跑过(下午)后有崩溃,改进后没有及时打包跑(五点该跑)
(主要原因)1.10临近上线(八点),release包点不动广告,联系广告组同学检查到九点半
保证上线时间,可改进的地方:
- 先测能产生数据的地方,不要先测边缘功能
- 功能已经基本实现后不用等改动安全且无关紧要的小功能,直接打Release包做预生产测试
- Monkey尽早跑,因为发现问题还需要重新跑
- 临近时间线后,遗留小问题列清单,追开发进度
- 云效任务 :打release包时过一遍,确定没问题的尽早关闭
- 时刻排手头工作优先级,先把紧急的事情做好
- 别人讲的话一定不要忽视!