如何在不同时启动应用程序的情况下运行Android单元测试?

时间:2015-09-08 06:48:51

标签: android unit-testing android-studio

当我通过Android Studio运行单元测试时,testrunner会按预期执行测试用例的测试方法(扩展AndroidTestCase)。但是,实际应用程序(扩展应用程序)也已启动。当然,这会干扰单元测试,因为它们都使用相同的类和硬件资源。我不知道为什么Android Studio(或任何其他模块)启动应用程序?

我正在进行单元测试,例如通过使用Android Studio的上下文菜单(v 1.3.2),选择测试用例文件/类并选择“运行”(ctrl + shift + f10),或使用菜单栏中的运行菜单。应用程序和/或单元测试在通过USB连接的真实设备(HTC Nexus 9 Android 5.1.1 API 22)上运行。我不能使用模拟器,因为它不提供蓝牙。

2 个答案:

答案 0 :(得分:1)

在您使用的Android Studio版本中,有两种类型的测试,

  • “单元测试”和
  • “Android Instrumentation Tests”

可以在名为“Build variants”的选项卡中选择。

enter image description here

Android Instrumentation Tests启动应用程序,而单元测试则不启动。您可以在网上搜索如何配置每个以及何时使用其中一个。

一些可以帮助您入门的链接:

http://tools.android.com/tech-docs/unit-testing-support http://www.vogella.com/tutorials/AndroidTesting/article.html

答案 1 :(得分:0)

Android Studio中通常有两种类型的测试,即仪器测试和单元测试。运行检测测试将启动您的应用程序,因为它执行并且Android组件在由系统确定的生命周期中运行。单元测试不会启动您的应用程序,因为它的执行方法与任何Android API无关。所以在你的情况下,这取决于你在测试什么。