先说一下背景,
目前做的项目,现有自动化案例数约 2w 条。
然后每天凌晨会执行自动化构建,跑这个全量自动化案例,到最后测试报告出来,中间大概需要 10 个小时,也就是平均一个案例执行时间约 2s 左右。
有的时候由于环境等各类问题,当天的日构建会执行失败。如果遇到需要发版,想要快速得到一个自动化结果就比较困难
对于这个问题,目前想到的几种方法
对于这几个方法的分析和想法:
第一个方法的话,迟早要做,需要大约团队的人投入约一周的时间来进行分析和调整,可能可以提升大约 30%。不过目前暂时没有这个时间和人力投入。
第二个方法,相对来说比较简单粗暴。但是案例中涉及到的系统较多,如果进行拆分执行,可能至少需要两套完整的测试环境。目前也不太有这个条件。
我个人最倾向于第三个方法,只需要单个环境就能做。但是并行执行,目前看最难得点就是在并行上。举个例子, A 案例中前置设置系统参数 B=0,而 B 案例中,又设置了系统参数 B=2,那这个对于测试结果来说是有影响的。 如果需要完整的分析测试案例之间的相互影响面来说,这个的工作量可能会比第一个方法又要更加耗时,并且工作难度也更加大了。
之前也考虑过一种方法,通过工具,执行案例后,分析每条案例涉及的数据表,然后将案例和这个涉及表进行绑定,以此来判断两条案例之间的相互影响关系。这个方法也存在一个问题,当案例发生变更时,他的影响范围可能也发生了改变。即之前涉及的表为 A、B、C,现在变成了 A、B、D,似乎又需要再分析一遍这个案例的关联关系。
以上是我的一些想法,由于接触的公司较少,网上也没有找到一些现有的例子,所以特此请教各位大佬,对于日益增多的自动化案例,如何做到高效快速执行?
望各位不吝赐教