2

目前 JavaME 单元测试的最佳工具是什么?我以前从未真正使用过单元测试(真丢脸!),所以学习曲线很重要。我会很感激你的回答有一些利弊。:)

4

4 回答 4

2

我认为这将取决于您打算进行什么样的测试。你会使用持续集成吗?必须在手机上运行测试。

如果测试是更多的逻辑/数据处理测试,你可以用 JUnit 做的很好。但是如果你需要使用 javax.microedition.* 中的一些类,那么事情会变得有点棘手,但并非不可能。

一些示例:屏幕上的文本换行测试,需要 javax.microedition.lcdui.Font。您不能只使用 WTK 附带的 jar 来创建字体类,因为在初始化时它将调用一些不可用的本地方法。

对于这类测试,我创建了 J2ME 的存根实现。基本上这些是我自己对 J2ME 类的解释。我可以在那里设置一些先决条件(例如每个字符都是 5 像素宽等)。而且它工作得非常好,因为我的测试只需要知道 J2ME 类如何响应,而不是它们是如何在内部实现的。

对于网络测试,我使用了 MicroEmulator 的网络实现,而且效果也很好。

单元测试的另一个问题 - 最好将您的移动项目作为使用 Java 4、5、6 的 java 项目,因为在 1.3 中编写测试至少对我来说是一种痛苦......

我相信,从 JUnit 开始会很好,可以启动并运行。如果出现其他一些要求(在手机上运行测试),那么您可以探索替代方案。

于 2008-09-25T04:11:26.040 回答
0

老实说,我在 Java 中使用的唯一单元测试器是JUnit和一个名为DBUnit的子项目,用于数据库测试......我假设你在 J2ME 下不需要它。

JUnit 很容易用于单元测试,只要您的 IDE 支持它(Eclipse 内置了对 JUnit 的支持)。您只需使用 @Test 注释标记测试(我认为是 org.junit.Test)。您还可以指定应该运行@Before@After每个测试的方法,以及在整个类之前或之后(使用@BeforeClassand @AfterClass)。

不过,我从未在 J2ME 下使用过 JUnit……我在工作中使用 J2EE。

于 2008-09-24T16:50:31.810 回答
0

从来没有找到一个优秀的。您可以尝试阅读此文档: 如何使用它 以及此处的链接:下载

由索尼爱立信制作,但适用于任何 J2ME 开发。

我建议您在攻击移动平台上的单元测试之前花一些时间学习纯 Java 中的单元测试。这可能是一个大到吞下一个芽。

祝你好运!

于 2008-09-24T16:51:41.837 回答
0

有一个名为 J2MEUnit 的框架,您可以尝试一下,但它看起来不像仍在积极开发中:

http://j2meunit.sourceforge.net

于 2008-09-24T17:00:37.590 回答