前言:
测试短视频SDK有半年多了,曾经跟组内小伙伴感叹,“再苦再累我都要坚持测试短视频”。虽然每次版本测试都被短视频SDK虐的不行,但是短视频SDK仍然是我最喜欢测试的一款SDK,没有之一。
短视频SDK介绍:
2016年底的时候出现了不少短视频类的应用,随着piapi酱等等的火爆,短视频成为下一年的视频风口。在这个时候市面上出现了一款短视频编辑神器VUE,融合了小视频录制,添加伴音、贴图、时长编辑、特效编辑等功能。所待的项目组也紧跟潮流推出了短视频SDK,主要实现短视频录制、增加特效、伴音、贴图、时长裁剪等功能。实际上只对外提供三个接口,但是由于视频文件的多样性、以及Android设备的不同兼容性、以及转码本身就需要耗费一定的时间,测试起来其实并不简单,总结了下面两点用于提升测试的效率。
测试tip1,引入单元测试框架Androidtestcase,减少手工操作成本
在前期测试准备中就发现,短视频SDK虽然只对外提供三个接口,但是最主要的转码接口有十几个参数,每个参数需要覆盖多种不同的数据以及不同的文件。比如短视频提供的拼接功能,其实并未涉及到参数,但是需要覆盖不同分辨率的文件,不同码率的文件,不同帧率的文件,以及宽高不规则的文件,单主流分辨率就有1280X720、960X540、640X480、480X320这四档,然后做为一个专注找bug的QA来说,这些分辨率肯定是远远不够的,那如果要全部覆盖的话,只依赖手工测试,会是一个事倍功半的过程。简单查看了下短视频SDK,因为不涉及到摄像头操作,操作均在本地,不调用网络,应该可以通过单元测试框架跑接口。曾经在很早之前使用过Androidtestcase这个单元测试框架,经过简单的调试,有了下面的工程。
在测试代码中,使用数组的方式来存储数据,来进行不同文件、不同参数类型的覆盖,具体如下:
//动态水印位置测试
int
dataprovidercharletpositon[][] = {
{
341
,
451
}, {
432
,
234
}, {
123
,
322
}, {