java测试类代码解析 java 测试类

怎么写Java测试代码?可以用main函数和JUnit来写测试代码 。main是最早使用的,但是现在更流行的测试工具是JUnit 。
JUnit是一个Java语言的单元测试框架 。它由Kent Beck和Erich Gamma建立 , 逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个 。JUnit有它自己的JUnit扩展生态圈 。多数Java的开发环境都已经集成了JUnit作为单元测试的工具 。
下面是一些具体的编写测试代码的技巧或较好的实践方法:
1. 不要用TestCase的构造函数初始化Fixture,而要用setUp()和tearDown()方法 。
2. 不要依赖或假定测试运行的顺序,因为JUnit利用Vector保存测试方法 。所以不同的平台会按不同的顺序从Vector中取出测试方法 。
3. 避免编写有副作用的TestCase 。例如:如果随后的测试依赖于某些特定的交易数据 , 就不要提交交易数据 。简单的回滚就可以了 。
4. 当继承一个测试类时,记得调用父类的setUp()和tearDown()方法 。
5. 将测试代码和工作代码放在一起 , 一边同步编译和更新 。(使用Ant中有支持junit的task.)
6. 测试类和测试方法应该有一致的命名方案 。如在工作类名前加上test从而形成测试类名 。
7. 确保测试与时间无关,不要依赖使用过期的数据进行测试 。导致在随后的维护过程中很难重现测试 。
8. 如果你编写的软件面向国际市?。?编写测试时要考虑国际化的因素 。不要仅用母语的Locale进行测试 。
9. 尽可能地利用JUnit提供地assert/fail方法以及异常处理的方法,可以使代码更为简洁 。
10.测试要尽可能地小 , 执行速度快 。
11.不要硬性规定数据文件的路径 。
12.利用Junit 的自动异常处理书写简洁的测试代码
事实上在Junit 中使用try-catch 来捕获异常是没有必要的,Junit 会自动捕获异常 。那些没有被捕获的异常就被当成错误处理 。
13. 充分利用Junit 的assert/fail 方法
assertSame()用来测试两个引用是否指向同一个对象
assertEquals()用来测试两个对象是否相等
14. 确保测试代码与时间无关
15. 使用文档生成器做测试文档 。
Java中的测试类和主类分别是什么,有点晕JAVA中的测试类是用来是用来对已经写好的功能组件进行测试的 。
可以有两种方法进行测试:
第一种:另外新建一个带有main方法的类,利用该类来调用需要测试的类,把需要测试的数据传入进去即可 。比如:
需要测试的类是ScoreQuery(String stuNum, String subject);
public class TestCase{
public static void main(String[] args) {
ScoreQuery scoreQuery= new ScoreQuery("Tom", "150110101");
Map map = new HashMap();
map = scoreQuery.query();
System.out.println(map);
}
}
可以利用上面的方法对ScoreQuery(String stuNum, String subject)进行功能测试 。
这种方法的好处就是比较简单 , 容易实现;但是弊端也很明显,不能进行功能重用 , 而且每次都要重复很多无用的代码 。
第二种方法就是创建测试的功能组件,每次实现该功能组件对其他组件进行测试 。
public class SimpleTestCase(){
Object object;
public staitc void prepare(){
Map map = new HashMap();
map.put("", "");
......
BeanUtils.map2Bean(map, object);
}
}
以后的测试类只需继承上面的测试类即可 。
关于java面向对象的单元测试 。测试类应该怎么写?具体代码如下可以用main方法(主方法)进行单元测试
或者使用@Junit 家在方法上面
这段Java的代码,要用Junit来测试,但是不会写测试类简单给你分析了一下,有好几个测试点:

推荐阅读