我是 Android 新手,我看过使用这些注释的示例代码。例如:
@SmallTest
public void testStuff() {
TouchUtils.tapView(this, anEditTextView);
sendKeys("H E L P SPACE M E PERIOD");
assertEquals("help me.", anEditTextView.getText().toString());
}
那个注解有什么作用?
最佳答案
This blog post 解释得最好。基本上是这样的:
- 小:此测试不与任何文件系统或网络交互。
- 中:访问正在运行测试的盒子上的文件系统。
- 大型:访问外部文件系统、网络等。
根据 Android Developers blog ,小测试应该 < 100 毫秒,中测试 < 2 秒,大测试应该 < 120 秒。
The answer from azizbekian 展示了如何在运行测试时使用注释。
此外,this old out-of-date page 还有更多信息。具体来说,如何将 am instrument
工具与 adb shell
一起使用。以下是相关部分:
我的仪器选项
am instrument
工具将测试选项传递给 InstrumentationTestRunner
或键值对形式的子类,使用 -e 标志,语法如下:
-e <key> <value>
有些键接受多个值。您在逗号分隔的列表中指定多个值。例如,此 InstrumentationTestRunner
调用为 package
键提供多个值:
$ adb shell am instrument -w -e package com.android.test.package1,com.android.test.package2 \
> com.android.test/android.test.InstrumentationTestRunner
下表描述了键值对及其结果。请查看下表中的使用说明。
键 | 值(value) | 说明 |
---|---|---|
尺寸 | [小 |中 |大] | 运行按大小注释的测试方法。注释是@SmallTest、@MediumTest 和@LargeTest。 |
所以阅读上面的内容,你可以指定这样的小测试:
$ adb shell am instrument -w \
> -e package com.android.test.package1,com.android.test.package2 \
> -e size small \
> com.android.test/android.test.InstrumentationTestRunner
关于java - Android 中@SmallTest、@MediumTest 和@LargeTest 注解的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4671923/