多语言展示
当前在线:425今日阅读:61今日分享:18

Java unit test工程的创建和代码编写

Java unit test主要是用于测试自己编写的java的接口功能的一个自动化的工具。从而可以测试代码接口设计的有效性和功能是否和实际情况相悖,下面简单介绍下java unit test的安装和运行
工具/原料

eclipse软件

方法/步骤
1

如果想在自己的工程中添加Java unit test的功能,那么必须先去导入Junit的库。首先在自己工程的右键属性开打,然后找到Add library的按键。

2

点击Add library后选择Junit4,然后下一步

3

点击完成

4

这个时候我们就发现导入的Junit4的库已经在我们的工程中了。

5

然后创建一个class工程区创建Java Unit Test代码

6

下图是我创建的Java Unit Test代码。首先需要导入一些Java Unit的库。如下图。

7

下面简单介绍下代码中的部分内容。首先看到的时候类头部的@RunWith(value=Parameterized.class)。这个需要解释下。Runner:Runner是一个抽象类,是JUnit的核心组成部分。用于运行测试和通知Notifier运行的结果。JUnit使用@RunWith注解标注选用的Runner,由此实现不同测试行为。 BlockJUnit4ClassRunner:这个是JUnit的默认Runner,平时我们编写的JUnit不添加@RunWith注解时使用的都是这个Runner。 Suit:没错,Suit就是个Runner!用来执行分布在多个类中的测试用例,比如我存在SimpleFunctionTest和ComplexFunctionTest类分别测试Person的简单和复杂行为,在茫茫的测试用例中如何一次执行所有与Person有关的测试呢——使用Suit。代码如下:其中ComplexFunctionTest和SimpleFunctionTest就是两个普通的测试用例类,这里忽略。@RunWith(Suite.class)@SuiteClasses({ComplexFunctionTest.class, SimpleFunctionTest.class})public class TestSuitMain{ }在执行TestSuitMain --> “Run As JUnit Test'的时候会把ComplexFunctionTest和SimpleFunctionTest的用例全部执行一遍。Parameterized:Parameterized继承自Suit,从这个身世和名字应该可以猜到一些因果了。Parameterized是在参数上实现了Suit——修饰一个测试类,但是可以提供多组构造函数的参数用于测试不同场景。

8

@Parameters,下面指定参数信息。

9

@BeforeClass:修饰static的方法,在整个类执行之前执行该方法一次。比如你的测试用例执行前需要一些高开销的资源(连接数据库)可以用@BeforeClass搞定。值得注意的是如果测试用例类的父类中也存在@BeforeClass修饰的方法,它将在子类的@BeforeClass之前执行。@AfterClass:同样修饰static的方法,在整个类执行结束前执行一次。如果你用@BeforeClass创建了一些资源现在是时候释放它们了。@Before:修饰public void的方法,在每个测试用例(方法)执行时都会执行。@After:修饰public void的方法,在每个测试用例执行结束后执行。

10

@Test标注需要执行的测试方法。

注意事项

注意@部分的内容。

推荐信息