<分区>
我目前正在构建一个 android 应用程序,并且我正在寻找最佳测试设置以使我的应用程序防弹:) 如果有任何小/大遗漏,请随时表扬! :)
所以我的测试有点像这样: (请记住,我的应用程序有一个后端服务器)
- Junit 在应用程序端针对所有受支持的 android 版本使用 Robolectric 进行测试。
- 在服务器端使用 mockito 进行 Junit 测试。
- 使用 robolectric 和后端服务器的真实实例进行集成测试。更新: 这可能最终会成为仪器测试和后端服务器的真实实例,因为我们在项目中使用的 robolectric 和 google play 服务是不可能的。
- 针对多个设备(不同的屏幕分辨率等)使用后端服务器的真实实例进行仪器测试,但仅针对单个版本的 android API - 可能是最新支持的版本。这意味着启动多个 android 虚拟设备并在每个设备上运行测试。我读到有人可以截取屏幕截图,但我不确定我们如何验证屏幕截图是否正常。
- 再次使用真实服务器使用 monkey runner 运行应用程序。
- 性能测试,我们主要是同时测试许多设备与后端服务器的交互。不太确定如何为 Android 运行此类测试。
所有这些测试都将在 TeamCity CI 服务器上运行。我们正尝试在尽可能多的此类测试中使用 roboletric,因为它比在设备上加载测试要快得多。
我的问题是,除了使用 robolectric/android maven 插件/teamcity 之外,我的设置中是否缺少任何大/小的东西,或者是否有任何框架可以让我们更轻松地运行所有这些测试?