2009-11-05 186 views
2

我最近开始学习Java Web开发,我想学习/理解:如何测试java代码?

  1. 什么是好的Java测试好?例如,如果有后端java代码验证来自表单的用户输入,然后插入到db表中,那么相应的测试代码应该是什么样子?

  2. 像TestNG,JUnit等测试框架如何适合java代码测试过程?

谢谢。

+1

我强烈建议您将此作为社区维基,或者直接搜索“java测试”,因为我的字面意思是数百个相关匹配。 – 2009-11-05 14:34:26

+0

我会将它分成2个问题,因为上面有两个不同的部分 – 2009-11-05 14:37:34

回答

8

这是一个很大的话题......您可能想要取得或下载“使用JUnit进行语义单元测试”(http://pragprog.com/titles/utj/pragmatic-unit-testing-in-java-with-junit)的副本,它涵盖了您要查找的内容。

此外,JUnit(http://junit.org)网站应该是一个很好的起点。

祝你好运。

+1

考虑到这样一个广泛的问题,我认为这些“入门工具包”实用书架书籍的初学者到中等水平方法恰到好处。 – Jonik 2009-11-05 14:46:11

+0

感谢您推荐“使用JUnit进行语义单元测试”,这是对单元测试和JUnit本身的主题的一个很好的介绍 - 最重要的是,它回答了我原文中的问题。但是,为了更深入地了解测试和JUnit,看起来“JUnit in Action”是一个不错的选择。 – Dan 2009-11-17 02:13:00

4

我敢说JUnit是当今最流行的Java测试框架。周围有相当多的资源。首先,有一本名​​为JUnit in Action的书,它也涵盖了servlet(web)测试。然后有很多online resources来学习如何对JUnit进行测试的servlet。

关于实际测试:最好的做法是测试完整的请求 - 响应周期以及周期中涉及的各个步骤。这听起来有点乏味,但它也取决于业务需求,您需要测试哪些用例。

0

如果您真的想开始使用Java单元测试进行Web开发,您可能需要查看Appfuse/Appfuse 2项目,它们都是基于Java的,并且都有大量的教程来帮助您入门。

Appfuse为您生成预安装项目,以便您了解它如何组合在一起并运行。此外,它允许您从您选择的某些框架中选择进行Web开发,并将其与JUnit集成在一起。

虽然被警告说项目有点旧,即使如此,这也是开始学习单元测试的好方法。

0

我会从JUnit开始。谷歌使用它的一些例子。保持你的方法小。

ECLEmma是一个有用的Eclipse插件,用于监控测试覆盖率。

0

eclipse的jUnit插件非常有用,metrics软件包将分析代码覆盖率,并查看哪些代码已经过测试以及需要测试哪些代码。还分析通过您的程序不同的路径,如果需要快速测试您的代码是非常有用的...

0

如果您开始学习Java,Junit更直接,更简单:TestNG具有更多功能,但也许是更复杂的。