Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我的android项目测试设置缺少什么?_Java_Android_Robolectric_Android Testing - Fatal编程技术网

Java 我的android项目测试设置缺少什么?

Java 我的android项目测试设置缺少什么?,java,android,robolectric,android-testing,Java,Android,Robolectric,Android Testing,我目前正在构建一个android应用程序,我正在进行最好的测试设置,以使我的应用程序防弹:)如果有任何小/大遗漏,请随时推荐!) 所以我的测试有点像这样: (请记住,我的应用程序有一个后端服务器) Junit在应用程序端使用Robolectric对所有受支持的android版本进行测试 Junit在服务器端使用mockito进行测试 与robolectric和后端服务器的真实实例进行集成测试。更新: 这可能最终会成为检测测试和后端服务器的真实实例,因为robolectric和我们在项目中使用的g

我目前正在构建一个android应用程序,我正在进行最好的测试设置,以使我的应用程序防弹:)如果有任何小/大遗漏,请随时推荐!)

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

  • Junit在应用程序端使用Robolectric对所有受支持的android版本进行测试
  • Junit在服务器端使用mockito进行测试
  • 与robolectric和后端服务器的真实实例进行集成测试。更新: 这可能最终会成为检测测试和后端服务器的真实实例,因为robolectric和我们在项目中使用的google play服务是不可能的
  • 仪器测试是针对多个设备(不同的屏幕分辨率等)使用后端服务器的真实实例进行的,但只针对单个版本的android API进行测试,可能是最新支持的版本。这意味着要启动多个android虚拟设备,并在每个设备上运行测试。我读到有人可以拍摄屏幕截图,但我不确定如何验证屏幕截图是否正确
  • 使用monkey runner运行应用程序,再次使用真正的服务器
  • 性能测试,其中我们主要测试多个设备与后端服务器的交互。不太确定如何在android上运行这样的测试
  • 所有这些测试都将在TeamCity CI服务器上运行。我们正在尝试在尽可能多的这些测试中使用roboletric,因为它比在设备上加载测试要快得多


    我的问题是,我的设置中有没有什么大的/小的遗漏,或者除了使用robolectric/android maven plugin/teamcity之外,是否有任何框架可以让我们更容易地运行所有这些测试?

    除了使用robolectric,Robotium值得一试。关于它的更多内容将在这里讨论()以及您可能感兴趣的其他测试方法

    我认为你的设置比其他人更完美。我会用appium或葫芦添加一些自动验收测试。但你的观点很可能涵盖了这一点。我没有任何仪器测试的经验:)仪器测试和webdriver测试是不同的。使用appium,您无法访问应用程序类。所以他们感觉更真实,比espresso慢得多,espresso可以访问应用程序类。我已经做了很多关于这个主题的调查,我将在一周左右提供更新。有很多框架我都不知道。Robotium确实不错,但浓缩咖啡似乎较新,在安装仪器时解决了同步问题。