(15)-任务执行完
最后更新于:2022-04-01 06:54:53
case执行完毕后,会回到CtsTest的run方法中:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-01-09_56911dd952022.jpg)
这个时候会先将mRemainingTestPkgs列表的第一项移除,以便下一次取第一个的时候,取的是新的TestPackage对象,然后根据case的类别来做相应的重启操作,最后返回到主界面。最后,截图留下犯罪现场,下载之前安装的jar包。在finally语句块中report未执行的case。为执行的case是通过执行其testStarted方法,但是不执行testEnded方法,让监听器识别出这条case未执行。
当CtsTest的run方法执行完毕后,回到了TestInvocation.prepareAndRun中:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-01-09_56911dd9cc783.jpg)
执行完恢复操作以后,会返回到performInvocation中:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-01-09_56911dda48309.jpg)
将日志系统打印出来并保存到logs目录文件中。
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-01-09_56911dda82e09.jpg)
然后调用InvocationSummaryHelper.reportInvocationEnded方法:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-01-09_56911ddab7be5.jpg)
通知所有监听器,本次任务的彻底结束,各自该干嘛,干嘛去。然后回到invoke中,然后invoke也完成了,回到了InvocationThread.run方法中:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-01-09_56911ddb22c0d.jpg)
然后释放设备。移除执行线程。最后返回到CommandScheduler.run方法
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-01-09_56911ddba886b.jpg)
我们的讲解也结束了,我们也该干嘛干嘛去吧。散了吧!!