记我的CTS框架研究(3)

现在,基础框架里要做的事做完了,在runTest里根据测试类型找到对应测试接口,我们要做的是CTS测试,所以就回到CTS框架里CompatibilityTest了,附图理解:
在这里插入图片描述

6 CompatibilityTest

CompatibilityTest就是进行CTS测试的test组件(最为关键的组件),它实现了很多接口。
在这里插入图片描述
直接看run方法:
在这里插入图片描述在这里插入图片描述
模块仓库初始化这块儿其实就是模块与设备的一个分发的地方,注意:是以设备为单位进行分发的,也就是对于i号设备,去初始化在它上面要运行哪些模块呢,而不是把所有模块拿来看A号模块分给哪个手机,B号模块分给哪个手机。
关于这个部分我专门写到下一篇博文吧。

initialize方法在ModuleRepo.java中,做的事是初始化所有的模块。
返回的getModules就是返回给该台设备(通过mShardIndex或者SN号指定)分配的运行测试的模块集合。

回到run(只挑部分截图):
在这里插入图片描述
while循环:
在这里插入图片描述
就是把一次测试过程中的所有测试模块依次取出执行
在这里插入图片描述
这里是具体执行的,可以看到调用的还是moduleDef的run方法:
在这里插入图片描述
这里就是对于cts测试的具体执行了,run方法还是会针对不同类型进行相应接口的调用(和之前runtests里的run方法调用不同接口的区别应该是那个地方还是在基础框架里,是CTS测试与其他诸如GTS测试等等测试的大类的层面,而这里已经是CTS测试了,应该是对于不同测试模块的一个更细致的划分)

注:
在cts v2中,和v1的最大区别是v1是通过框架把所有的每一条测试case都拿到,逐个去执行,而v2则是把每个测试module都作为一个configuration,框架做的就是去拿到测试的所有module,但是每个module的执行还是走了框架,因为每个module现在都被认为是一个configuration了,各个module之间都是独立的,并不需要像V1框架那样再需要一个xml文件去配置,需要plan文件去做一个集合。而只需要去逐个执行测试module即可。

好了,框架的研究就差不多这些了,关于V1,V2的区别可以看我一开始给了链接的那篇博文,说的更详细一些。
最后一篇我就单独拎出用例模块的组织。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值