随着APP越来越多,以及安卓版本、手机厂商、屏幕分辨率的差异,导致每个APP都需要做兼容性测试,才能够避免出现在特定的手机上表现异常的问题。当然,ios的版本和手机、平板也不少,同样存在很多兼容性问题,但是相对是比较少的。
那么,兼容性测试的目标是什么?同样,测试的目标就是发现问题,没有发现问题的测试,都是耍流氓。很多测试厂商,通过了兼容行测试,但是报告是几乎没有问题。泽众软件也提供兼容性测试,从我的印象里,从来没有出现过兼容性测试没什么问题的情况,往往问题一大堆。
兼容性测试应该怎么做,才能覆盖到很多手机,以及发现问题?
很多厂商说,我编写一个自动化的测试脚本,去每台设备上跑一下,就知道你是不是有问题。
其实这是一个错误的认知。首先,你没有定义APP兼容测试的需求范围。比如,我的APP有100个功能,你随便测试一下,可能只测试了5个页面功能,就说,没有问题。那剩下的95个功能怎么办?不看测试范围,只看报价低的,就是耍流氓。多少钱,要看你覆盖的功能范围有多大,而不是只看钱。就好比,你买了一件名牌呢子大衣,花了5000块,买个老头衫花了10块,没有可比性。
如果你已经编写了脚本,能够覆盖到所有的界面功能,恭喜你,基本上覆盖了你在上面执行的各个移动设备。但是,这还差得远。
当测试脚本在不同的设备上运行,由于android系统、分辨率、品牌的差异,会产生很多奇奇怪怪的问题,有一些是APP的问题,有一些是脚本本身和移动设备兼容性不够好(因为手机更新很快,所以做到完美的测试,难度太大),还有一些是APP使用过程中,受到了环境的影响,比如连接不到网络等原因造成的。
我们把不正常的报错,叫做“误报”。
测试脚本运行失败,我们就需要人工来在这个设备上执行,以重现这个缺陷。如果人工执行没有发现,就基本上可以排除(当然也存在可能是功能问题)。这个过程的目标是,确认缺陷,取消掉“误报”的缺陷。
当然,脚本执行通过的,我们基本上可以认定没有问题。
1,编写兼容性测试脚本,并且在选定的设备上来执行;
2,排查报的问题,排除误报;
3,提交测试报告和缺陷列表。
因此,只在移动设备上执行一次,就生成各种报表,让用户去看,不去排除误报,也是耍流氓。所谓测试执行结束,所有的文件都自动生成,就是一件多么不靠谱的事情。
推荐阅读: