今天在整理以前的工作资料时发现了一篇测试报告,觉得可能会对某些行业的朋友有所帮助。
需求:
竞品和我们在数据量大的时候的性能对比。导入2w个商品,2w个会员,在银豹、天店和快店收银,做查找商品,收银,查找会员, 商品管理,分类管理,是否有卡顿,变慢,不稳定的问题。
需求分析:
1、经过跟同事沟通,确认了会员数量的多少不会对前端pos性能产生影响。往pos端导入商品数据有两种方案:《其实也考虑过直接找一个有2W商品的客户账号》
方案1:通过VM后台-商品档案导入-维护购销合同-POS商品管理
① 优点:移植性高,即如果是导入到线上的库,以后版本迭代后,再做性能测试,随时可以做。而且即使后期用生产数据覆盖预发布库,也可以直接在预发布做测试。
② 缺点:不能在预发布做,否则丧失上面提到的优点。其次,这种方案操作非常繁琐,以2W商品为例,需要分10次导入到商品档案,购销合同和pos商品管理操作更加繁琐,耗时。
方案2:通过adb拉出pos端的库,更新商品表,然后再导回去。
① 优点:操作简单。
② 缺点:只能往pos本地库导入,所以版本更新后都需要再导入一次。但由于第一次测试时固定了sql脚本,所以每次更新也只需要半小时即可导入完成。
2、银豹和天店竞品,需要到对方官网下载试用版本。初步测试发现,对方导入信息做了数量级的限制,且操作也复杂、耗时。
过程
1、在使用方案1进行商品导入时,多次报错,原因待查。
2、第二种方案的步骤:
1) 跟研发了解pos端查询商品和通过分类查询商品的sql
2) 分析sql,找出用到的表和字段。
3) 通过adb命令把pos本地库拉出来
拉到本地:adb pull /data/data/com.dianxiaohuo.cloudpos/databases (本地目录)
4) 把库加载到navicat,然后把sku表和poscategorysku表分别导出sql和表
5) 数据加工,打开excel表,把数据拼接成sql语句。这里的黄色代表需要更新的,有一定的对应关系(我是直接把开发给我的数据复制进去),需要注意sku名称需要去除特殊字符。
6) 把上中的K列值整体复制,粘贴到sql脚本中。需要注意的是,需要以notepad 打开,粘贴进来以后也需要用查找替换再做一点简单的处理。下图是处理过的语句
7) 把这个语句在navicat中导入数据库,然后再用下面的语句把库导入到pos机。
导入:adb push (本地目录)CLOUD_POS_DB /data/data/com.dianxiaohuo.cloudpos/databases/CLOUD_POS_DB
8) 此时即可以在pos端做性能测试了。
源自微信公众号 软件测试经验与教训