我在我目前正在处理的示例项目中使用 AndroidAnnotations(2.5)。
由于您可以使用例如@EActivity
,来注释您的类@ViewById
,@Click
这都会导致生成的编译时代码,我想知道如何为任何 Android Annotations 支持的应用程序创建单元测试/功能测试。
我很想听听关于这个问题的一些意见。
干杯,
我在我目前正在处理的示例项目中使用 AndroidAnnotations(2.5)。
由于您可以使用例如@EActivity
,来注释您的类@ViewById
,@Click
这都会导致生成的编译时代码,我想知道如何为任何 Android Annotations 支持的应用程序创建单元测试/功能测试。
我很想听听关于这个问题的一些意见。
干杯,
我在这里回复了一个类似的帖子。
有几个选项可供您使用。当然,您可以在我声称的更多单元测试风格中测试您的代码预生成。这应该单独测试 Java 代码,最好不涉及生成的代码。
您还可以在生成后测试代码。AA 生成的 MyActivity_ 类可以在编译后直接实例化并进行相应的测试。我声称这正在朝着集成测试风格发展。
虽然,我认为测试总比不测试好,但我认为对于集成测试,您应该在类似于生产的情况下在硬件上进行测试。这使您可以全面了解您的应用程序在现实世界中的行为方式。因此,对于集成测试,我更喜欢高级别的“是否一切都很好”测试。
Robolectric和Robotium可以极大地帮助这两项工作。Robolectric 允许您在单元测试中实例化您的活动,而 Robotium 允许您直接在设备上测试 selenium 样式。
回顾一下,我更喜欢在不生成代码的情况下对我的代码进行大量单元测试,然后进行一些轻量级的集成测试,以确保一切正常工作。