Android Studio 1.5使用junit单元测试,以及“Test running startedTest running failed: Instrumentation run failed

来源:互联网 发布:强矩阵和弱矩阵 编辑:程序博客网 时间:2024/04/27 15:16

Android Studio 1.5创建的工程,会生成两个默认的测试目录: test,androidTest,其中, test目录为在本机执行单元测试代码的目录, androidTest为在Android设备上执行单元测试代码的目录。

目录如下图所示:

android_test_directory

对于新建的工程,默认会生成相应的测试代码例子。如下图所示:

android_unit_test_example_file

请注意上图的两个文件图标的差别,一个文件的图标的右上角是两个三角标记,另一个文件的右下角是个时钟的标记。

右击 androidTest目录下的 ApplicationTest.java,就会出现执行测试用例的菜单。如下图:

android_unit_test_run_test_menu

但是当右击 test目录下的 ExampleUnitTest.java则没有任何的运行菜单。如下图:

test_menu_no_run_or_debug_menu

那么,如何执行 test目录下的 ExampleUnitTest.java呢?

操作方法为 "View"-> "Tool Windows"-> "Build Variants",然后,切换 TestArtifact从 Android Instrumentation Tests到 Unit Tests
如下图:

Build_Variants_Menu

切换 Test Artifact

Build_Variants_Window

可以看到,切换完成后,两个文件的图标互换了一下:

UnitTest_File_Icon_Switch

此时右击 test目录下的 ExampleUnitTest.java则会出现 Run 'ExampleUnitTest'Debug'ExampleUnitTest'的菜单了。

如下图:

ExampleUnitTest_Run_Debug_Menu

至于

这个问题,是由于Android Studio 的BUG,导致的,一般是没有执行上述的切换命令,然后右击 test目录下的 ExampleUnitTest.java依旧会出现 Run'ExampleUnitTest'Debug 'ExampleUnitTest'的菜单,然后点击后,会让我们选择运行的设备,这个时候,明显是把我们当作可以在设备上运行的测试用例了,因此,找不到是必然的。

应对这个BUG的解决方法,就是清理代码,然后重新加载工程,一般可以解决这个问题了。

0 0