目标准备者在定义它们的测试级别中的测试之前被调用。这允许设置任何设备以使测试顺利运行。
基础接口
基本接口是ITargetPreparer ,它允许实现将要执行的setUp
方法。我们建议实现我们的基本抽象类BaseTargetPreparer ,它提供了一个内置的禁用功能来轻松禁用准备器。
更干净的界面
setUp
的自然扩展是tearDown
并且由不同的接口ITargetCleaner提供。这提供了tearDown
接口,允许在测试执行后清理setUp
中所做的任何事情。
BaseTargetPreparer
类还扩展ITargetCleaner
。
建议
我们建议每个准备程序仅限于一个主要功能,例如安装 APK 或运行命令。这允许更容易地重复使用准备器。
您还应该在添加新的准备者之前检查可用的准备者列表,以避免重复工作。准备器在tools/tradefederation/core/src/com/android/tradefed/targetprep/中可用。
XML 配置
对象标记将是target_preparer
,例如:
<target_preparer class="com.android.tradefed.targetprep.InstallApkSetup">
<option name="install-arg" value="-d"/>
</target_preparer>
另请参阅套件设置以了解上下文。
顶层设置
如果在顶级设置中指定,则准备器将只为每个设备运行一次。一个示例是cts-common.xml ,它是 Android 兼容性测试套件 (CTS) 测试的顶级设置。
模块级设置
如果在模块级别指定,则准备程序将始终在该模块之前运行。一个示例是backup/AndroidTest.xml ,它定义了 Tradefed 如何运行backup
CTS 模块。
请注意,虽然准备器将在模块之前运行,但它将在任何系统状态检查器之后运行。