2008-09-22 118 views
2

我对J2ME比较陌生,即将开始我的第一个严肃的项目。我的测试经验也不是太深。我正在寻找J2ME的单元测试框架。你会推荐哪些J2ME的单元测试框架?

到目前为止,我已经见过J2MEUnit,但现在我不知道它有多好的支持。我已经看过JavaTest Harness,但我不知道它是不是过度杀伤。

请告诉我,你就什么建议框架:
*执行测试
*支持社区和工具的简单
*与应用程序认证兼容性处理
*集成的IDE(Eclipse中,NetBeans的)
*其他方面你觉得重要...

谢谢, Asaf。

回答

5

This is a blog entry of a spanish company who makes movile games。比较很多框架和结论(翻译):

  • MoMEUnit提供有关测试非常有用 信息。 容易移植和蚂蚁compabile。 A 的缺点(或者可能不是),它的 ,它需要每个测试类别 有一个独特的测试方法,使用大量的继承。

  • JMEUnit。 (J2MEUnit 和JMUnit的未来合并)JMUnit不支持 Ant,但界面类似于MoMEUnit的 。 J2MEUnit不提供 非常有用的信息, 测试。在两个 框架中创建测试都很复杂。 J2MEUnit支持Ant;这就是为什么 两个框架 的合并将是非常有趣的(他们有 一直致力于int作为一年多 Ø以下)

我的经验:我已经使用J2ME单位和设立测试夹具由于J2ME中缺少“反射”,这是一种痛苦,但它们都是以相同方式构建的,所以模板可以节省大量时间。 我正打算尝试MOME股本周只是为了检查其简单的模型

一些测试单位框架J2ME:

+0

当需要与Maven集成时,最适合什么? – nish1013 2013-10-23 07:50:30

0

嗯......我自己并没有开发移动应用程序,但我认为J2MEUnit是更好的选择,因为它基于原有的JUnit,它有一个大的社区,并且由大多数IDE支持,所以它应该很容易运行至少那些不依赖于IDE的移动硬件的测试。

更重要的可能是J2MEUnit与ANT集成,因此您可以在每个构建中运行测试。

5

请看一下MockME。

www.mockme.org

从他们的网站:。 “MockME是Java ME的对Java SE MockME mock对象让你写真正的单元测试,而无需在手机上运行它们甚至可以使用动态模拟对象框架,例如EasyMock,使您能够模拟Java ME中的任何对象!MockME集成了单元测试的最佳工具,包括JUnit,EasyMock和DDSteps。通过制作Java ME API的mockable,您可以为Java ME编写单元测试应用你真正想要的方式。“

+0

这真的很有帮助。我会试一试 – 2008-09-30 22:09:55

2

MicroEmulator +的JUnit在J2SE

我开始了使用JMUnit一样的工具,但最近我切换到标准的JUnit + MicroEmulator的J2SE。这与使用MockME相似,但是使用MicroEmulator。我更喜欢MicroEmulator,因为它具有组件的实际实现,并且您可以在其上运行整个MIDlet。尽管我从未使用过MockME。

我所有的非GUI单元测试都是通过简单地使用MicroEmulator作为库来运行的。这具有所有JUnit工具无缝工作的优点,特别是Ant,Maven,大多数IDE和持续集成工具。由于它运行在J2SE上,因此您还可以使用泛型和JUnit注释等功能,这使得编写单元测试更加美观。

像RecordStore这样的组件在工作之前需要一些设置。这是通过MIDletBridge.setMicroEmulator()完成的。

使用MicroEmulator还具有可以定制某些组件的实现的优点,例如RecordStore。我使用内存中的RecordStore,它在每次测试之前都会重新创建,这样我就可以确定测试是独立运行的。

实际设备

上述不会对任何真正的设备上运行的方法。但是,在我看来,只有GUI和验收测试需要在真实设备上运行。为此,可以在Symbian设备上使用mVNCT-Plan Robot等工具(感谢this blog post)。不过,我只能让mVNC通过蓝牙工作,而且速度很慢。

另一种可能是使用像The Forum Nokia Remote Device Access (RDA)这样的服务。我仍然需要调查这样的平台是否适合自动化测试。

+0

你能否给我更多关于MicroEmulator + Junit的非GUI测试的教程? – eric2323223 2011-06-14 08:56:36