目前什么是JavaME单元测试的最佳工具?我之前从未真正使用过单元测试(对我感到羞耻!),因此学习曲线非常重要。我很感激你的答案有利有弊。 :)
答案 0 :(得分:2)
我认为这取决于你打算做什么样的测试。你会使用持续集成吗?是否必须在手机上运行测试。
如果测试是更多逻辑/数据处理测试,那么你可以使用JUnit做得很好。但是如果你需要使用javax.microedition。*中的一些类,那么事情会变得有点棘手,但并非不可能。
一些例子:在屏幕上进行文本换行测试,需要javax.microedition.lcdui.Font。你不能只使用WTK附带的jar来创建一个字体类,因为在初始化时它会调用一些不可用的本机方法。
对于这些测试,我创建了J2ME的存根实现。基本上这些是我自己对J2ME类的解释。我可以在那里设置一些前提条件(例如每个字符宽5像素等)。它工作得非常好,因为我的测试只需要知道J2ME类如何响应,而不是它们如何在内部实现。
对于网络测试,我使用了MicroEmulator's网络实现,并且运行良好。
单元测试的另一个问题 - 最好将你的移动项目作为一个使用Java 4,5,6的java项目,因为在1.3中编写测试对我来说是痛苦的...... / p>
我相信,从JUnit开始会很好,起床和跑步。如果出现其他一些要求(在手机上运行测试),那么你可以探索替代方案。
答案 1 :(得分:0)
老实说,我在Java中使用的唯一单元测试器是JUnit,它的子项目名为DBUnit,用于数据库测试......我假设你赢了在J2ME下需要。
JUnit非常易于用于单元测试,只要您的IDE支持它(Eclipse支持内置的JUnit)。你只需用@Test注释标记测试(org.junit.Test,我认为)。您还可以指定每个测试应运行@Before
或@After
的方法,以及整个课程之前或之后的方法(使用@BeforeClass
和@AfterClass
)。
我从未在J2ME下使用过JUnit,但是......我在工作中使用J2EE。
答案 2 :(得分:0)
从未找到过优秀的人。您可以尝试阅读本文档: how to use it 在这里链接到:download it
由索尼爱立信制作,但适用于任何J2ME开发。
我建议您在攻击移动平台上的单元测试之前花一些时间学习普通Java中的单元测试。这可能是一个很大的吞下一个射击。
祝你好运!答案 3 :(得分:0)
有一个名为J2MEUnit的框架,您可以尝试一下,但看起来它仍然没有被积极开发: