java - 我的 android 项目测试设置中缺少任何内容吗?

标签 java android robolectric android-testing

<分区>

我目前正在构建一个 android 应用程序,并且我正在寻找最佳测试设置以使我的应用程序防弹:) 如果有任何小/大遗漏,请随时表扬! :)

所以我的测试有点像这样: (请记住,我的应用程序有一个后端服务器)

  1. Junit 在应用程序端针对所有受支持的 android 版本使用 Robolectric 进行测试。
  2. 在服务器端使用 mockito 进行 Junit 测试。
  3. 使用 robolectric 和后端服务器的真实实例进行集成测试。更新: 这可能最终会成为仪器测试和后端服务器的真实实例,因为我们在项目中使用的 robolectric 和 google play 服务是不可能的。
  4. 针对多个设备(不同的屏幕分辨率等)使用后端服务器的真实实例进行仪器测试,但仅针对单个版本的 android API - 可能是最新支持的版本。这意味着启动多个 android 虚拟设备并在每个设备上运行测试。我读到有人可以截取屏幕截图,但我不确定我们如何验证屏幕截图是否正常。
  5. 再次使用真实服务器使用 monkey runner 运行应用程序。
  6. 性能测试,我们主要是同时测试许多设备与后端服务器的交互。不太确定如何为 Android 运行此类测试。

所有这些测试都将在 TeamCity CI 服务器上运行。我们正尝试在尽可能多的此类测试中使用 roboletric,因为它比在设备上加载测试要快得多。

我的问题是,除了使用 robolectric/android maven 插件/teamcity 之外,我的设置中是否缺少任何大/小的东西,或者是否有任何框架可以让我们更轻松地运行所有这些测试?

最佳答案

除了使用 Robolectric 之外,Robotium 也值得一试。此处 (https://stackoverflow.com/q/522312/3152743) 以及您可能感兴趣的其他测试方法将对此进行更多讨论。

关于java - 我的 android 项目测试设置中缺少任何内容吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24167268/

相关文章:

java - 如何向我的邮件发送器 JavaMail 添加附件?

java - Android 应用程序开发中的 SQLite 数据库行为

android - 使用 robolectric 测试图像处理例程

android - 数据库测试失败 Robolectric 2.4 + Ubuntu 14 + GradleWrapper 2.4

java - 数组和打印语句/java

java - 如何在 JavaFX 中仅设置顶部填充

android - 我不在 list 文件中使用联系人权限。但我在应用程序信息屏幕上获得了联系许可

android - Robolectric 单元测试 build.os 版本返回不正确?

java - Java中的 'new Class[] {iface}'和 'new Class<?>[] {iface}'是一样的吗

java - 一种查找模式编号的方法