您的位置:首页 > 其它

junit使用及断言

2015-02-15 10:33 183 查看
JUnit如何使用

1:构建TestCase类

public class xxxTestextends TestCase{

}

测试用例类必须实现TestCase,命名习惯一般是在待测试类名称后面加上Test。
2:构建测试方法

可以自动执行的测试方法必须满足如下几个条件

1)必须是public

2)无返回值void

3)方法名称以test开始。(一般是在带测试方法前加上test)

4)无任何参数

Tips: 这里涉及到一个关键的类Assert(断言),断言就是一定是真的。不是真的就结束。

运行一下,看见的是绿色。OK,只要是绿色一切都是正常的。

在完善我们的测试用例之前,还需要将setUp和tearDown这两个方法引入进来。

setUp()这个方法是JUnit默认执行的,就是当调用测试方法之前要先运行这个方法。

当测试方法运行结束的时候要运行另一个方法tearDown().
Assert.fail();

这个方法在我们的测试用例中大量出现,这个方法的意思就是,当成与运行这条语句的时候结束所有的断言。

三种测试环境:
接下来是介绍JUnit可以有三种自定义的环境下运行JUnit的测试。

Text,AWT,Swing。

在main方法中运行如下三段代码。

junit.awtui.TestRunner.run(UserAccountTest.class); 会弹出两个窗口,同时在控制台有信息打出。
junit.swingui.TestRunner.run(UserAccountTest.class);  弹出的两个窗口是JUnit自带的AWT和Swing两种显示环境。
junit.textui.TestRunner.run(UserAccountTest.class);  控制台是Text显示环境。

以上是通过main方法来运行三种测试环境。

还可以通过java命令的方式。

java junit.textui.TestRunner com.test.UserAccountTest

这种方式也适合以上三种环境。

如何测试工程中所有的测试用例:

我们的项目会有很多测试用例,测试用例是同代码基本上同步,当项目基本完成,我们希望运行一下全部的测试用例,这个时候怎么办呢,不可能一个个运行。

实际上JUnit已经提供了这种测试的方法。而且用到了Composite的设计模式,主要是作者太强。

junit中的assert方法全部放在Assert类中,总结一下junit类中assert方法的分类。

1.assertTrue/False([Stringmessage,]boolean condition);

判断一个条件是true还是false。感觉这个最好用了,不用记下来那么多的方法名。

2.fail([String message,]);

失败,可以有消息,也可以没有消息。

3.assertEquals([String message,]Object expected,Object actual);

判断是否相等,可以指定输出错误信息。

第一个参数是期望值,第二个参数是实际的值。

这个方法对各个变量有多种实现。在JDK1.5中基本一样。

但是需要主意的是float和double最后面多一个delta的值,可能是误差范围,不确定这个单词什么意思,汗一个。

4.assertNotNull/Null([String message,]Object obj);

判读一个对象是否非空(非空)。

5.assertSame/NotSame([String message,]Object expected,Objectactual);

判断两个对象是否指向同一个对象。看内存地址。

7.failNotSame/failNotEquals(String message, Object expected, Objectactual)

当不指向同一个内存地址或者不相等的时候,输出错误信息。

注意信息是必须的,而且这个输出是格式化过的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: