1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 用Junit写单元测试用例

用Junit写单元测试用例

时间:2020-02-13 05:17:28

相关推荐

用Junit写单元测试用例

要使用JUnit框架,首先要引入import org.junit.*;其中包括大多数可能是用到的库函数还有一个经常和junit一起使用的库函数,import org.junit.Assert.*;在测试类中,并不是每个方法都用于测试,所以可以使用“注解”@来表明哪些是测试方法

@Test 表明这是一个测试方法对于方法的声明:名字不限制,但是返回值必须是void,并且不能有任何参数@Test在包org.junit.Test中如果要运行该测试类,选择该文件,右击选择Run As ->JUnit Test即可

@Test属性timeout来完成限时测试对于那些逻辑很复杂,循环嵌套比较深,有可能出现死循环的程序需要采取一定预防措施给这个测试函数设定一个预期的执行时间,超过这个时间,就会被系统强行终止并且输出函数结束原因是因为超时@Test(timeout=2000)时间为2000毫秒即2秒

@Test的属性expected来监控测试方法中可能会抛出的异常如果你觉得这个函数应该抛出异常,但是它没有抛出,说明有bug@Test(expected=java.lang.ArithmeticException.class)

在测试函数前面加上@Ignore表示该测试方法暂时被忽略@Ignore@Test

@Before和@After完成前置工作和后置工作前置工作是指测试方法在运行之前需要做的一些准备工作,例如数据库的连接,文件的加载,输入数据的准备后置工作是指测试方法运行之后要做的事情,例如释放数据库连接,输入输出流的关闭而@Before和@After是在org.junit,Before 和org.junit.After之中,使用之前要将其引入

@BeforeClass 和@AfterClass 来完成一次前置工作和后置工作例如测试之前读取文件,如果每次测试都要打开文件进行读写,会非常耗时所以可以在测试一开始读取一次,在所有测试结束之后释放文件每个测试类只能有一个方法被标注为@BeforeClass 和@AfterClass并且类型为public static@BeforeClass 和@AfterClass在org.junit.BeforeClass和org.junit,AfterClass中

Junit 为我们提供了Assert方法在org.junit.Assert中在该类中有方法assertEquals(expected,actual)验证expected和actual是一样的,如果是一样的,测试通过,否则测试失败assertEquals(expected,actual,tolerance) tolerance代表偏差值assertTrue(boolean condition)验证condition的值是trueassertFalse(boolean condition)assertNotNull(Object obj)assertSame(expected ,actual)验证是同一个对象,即指向同一个对象assertNotSame(expected,actual)上面的每一个方法,都有一个重载的方法,可以在前面加一个string类型的参数表示如果验证失败,将用这个字符串作为失败的结果报告fail()再不检查任何条件的情况下使得断言失败Assert,fail()加载期望中不可能到达的地方,一旦到达,表示测试失败

Junit框架是通过Runner来运行代码他们负责调用你的测试代码如果没有指定哪个Runner,系统会自动使用默认Runner来运行你的代码如果指定了,如下import org.junit.runner.RunWith;import org.junit.runner.JUnit4;@RunWith(JUnit4.class)为什么junit没有main()方法就能运行?其实在org.junit.runner包下,有个JUnitCore.class,其中有一个标准的main方法,是Junit入口函数

junit中基础测试大概就这些了

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。