我觉得我根本误解了Robolectric的目的。我已经与它战斗了一个星期,到目前为止,获得新的错误消息被认为是进步。我能够测试一些基本的东西,比如活动中的静态视图,但是当涉及到更复杂的东西时,一切都会崩溃。我不得不扩展Robolectric以支持第三方库和特定参数、Appcompat操作栏和许多其他东西,这非常耗时,并且没有真正记录在任何地方,而且进展缓慢。我开始觉得我使用的方式是错误的,它根本不能做我想要做的事情。
通用的应用逻辑相当简单,因此实际上没有太多可以进行单元测试的内容,最复杂的内容在UI和远程API调用中。Robolectric只是为了使Android单元测试比JUnit更容易,因为它可以在JVM上运行并支持一些Android类吗?也许像Espresso这样的黑盒行为测试框架更适合我的需求?但我们使用连续集成,而Robolectric很容易设置在CI服务器上运行测试,我希望保持这种方式。
你用Robolectric做什么?许多博客文章推荐它进行“活动生命周期测试”,但由于我在Android世界中也很新,我真的不理解它的目的,特别是因为我正在测试的应用程序仅支持纵向屏幕。能否请有人概述一下您使用Robolectric做什么以及如何做到,最好附带代码示例,并解释这些测试的重要性以及为什么和如何进行?
通用的应用逻辑相当简单,因此实际上没有太多可以进行单元测试的内容,最复杂的内容在UI和远程API调用中。Robolectric只是为了使Android单元测试比JUnit更容易,因为它可以在JVM上运行并支持一些Android类吗?也许像Espresso这样的黑盒行为测试框架更适合我的需求?但我们使用连续集成,而Robolectric很容易设置在CI服务器上运行测试,我希望保持这种方式。
你用Robolectric做什么?许多博客文章推荐它进行“活动生命周期测试”,但由于我在Android世界中也很新,我真的不理解它的目的,特别是因为我正在测试的应用程序仅支持纵向屏幕。能否请有人概述一下您使用Robolectric做什么以及如何做到,最好附带代码示例,并解释这些测试的重要性以及为什么和如何进行?