我如何在 Android Studio 中 select 一组特定的测试(不在同一个包中)到 运行?
How can I select a specific set of tests (not in same package) to run in Android Studio?
使用 运行 配置,您可以为 运行 指定测试组,前提是它们在同一个 class 或同一个包中。但是,我想指定一组测试,这些测试分散在我的测试套件中。
我找不到有关如何执行此操作的具体说明。我想出了一个办法,我想我会在这里分享它,以防其他人发现它有用。
我通过创建注释(可以应用于测试 class 或测试方法)并在该注释上使用测试 运行ner 过滤器解决了这个问题。
定义测试注释
/**
* This annotation is used to mark tests for devices with a physical
* keyboard (Chromebook).
*
* The annotation can be applied to test classes, and to individual
* tests.
*/
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface PhysicalKeyboardTest {
}
使用测试注释
@Test
@PhysicalKeyboardTest
public void enterKey_shouldWork() {
...
}
运行 配置 - 单个设备
在 运行 配置对话框中,在“Android 插桩测试”下
- 复制“所有 Android 测试”配置
- 将副本重命名为“物理键盘测试”
- 在“检测参数”中
- 名称字段:注解
- 值字段:com.path-to-annotation-def.PhysicalKeyboardTest
“物理键盘测试”运行 配置将 运行 所有在测试套件中的任何位置使用“@PhysicalKeyboardTest”注释的测试。
运行 配置 - 所有连接的设备
在 运行 配置对话框中,在“Gradle”下“=12=]
- 添加配置:
- 名称:物理键盘测试(所有设备)
- Gradle 项目:select 你的应用
- 任务:connectedCheck
- 参数:-Pandroid.testInstrumentationRunnerArguments.annotation=com.你的注释定义路径.PhysicalKeyboardTest
“物理键盘测试(所有设备)”运行 配置将 运行 所有连接设备上测试套件中任何位置的所有带有“@PhysicalKeyboardTest”注释的测试。
使用 运行 配置,您可以为 运行 指定测试组,前提是它们在同一个 class 或同一个包中。但是,我想指定一组测试,这些测试分散在我的测试套件中。
我找不到有关如何执行此操作的具体说明。我想出了一个办法,我想我会在这里分享它,以防其他人发现它有用。
我通过创建注释(可以应用于测试 class 或测试方法)并在该注释上使用测试 运行ner 过滤器解决了这个问题。
定义测试注释
/**
* This annotation is used to mark tests for devices with a physical
* keyboard (Chromebook).
*
* The annotation can be applied to test classes, and to individual
* tests.
*/
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface PhysicalKeyboardTest {
}
使用测试注释
@Test
@PhysicalKeyboardTest
public void enterKey_shouldWork() {
...
}
运行 配置 - 单个设备
在 运行 配置对话框中,在“Android 插桩测试”下
- 复制“所有 Android 测试”配置
- 将副本重命名为“物理键盘测试”
- 在“检测参数”中
- 名称字段:注解
- 值字段:com.path-to-annotation-def.PhysicalKeyboardTest
“物理键盘测试”运行 配置将 运行 所有在测试套件中的任何位置使用“@PhysicalKeyboardTest”注释的测试。
运行 配置 - 所有连接的设备
在 运行 配置对话框中,在“Gradle”下“=12=]
- 添加配置:
- 名称:物理键盘测试(所有设备)
- Gradle 项目:select 你的应用
- 任务:connectedCheck
- 参数:-Pandroid.testInstrumentationRunnerArguments.annotation=com.你的注释定义路径.PhysicalKeyboardTest
“物理键盘测试(所有设备)”运行 配置将 运行 所有连接设备上测试套件中任何位置的所有带有“@PhysicalKeyboardTest”注释的测试。