- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JUnit java单元测试
首先须导入JUnit包:所在项目右击-Build Path-Add Libraries
-选择JUnit-选择一个版本-Finish
一.手动生成
1.测试方法,必须符合下列条件
* 方法必须声明成:public,void
* 方法名必须以test开头 * 方法无参数Public void testAdd(){}
JUnit4:@Test (org.junit.Test)
Public void AddTest(){}
2. JUit3 与 JUit4的区别
源码和测试代码分开放在不同的Source Folder,测试代码所在的包名最好和源码中的包名一一对应。JUnit3测试方法中的类必须继承TestCase(junit.framwork.TestCase);而JUnit4类则不需要继承任何类,但在方法前须加上注解@Test(org.junit.Test)此测试方法,标注该程序是以JUnit的方式来运行的。
JUit3:在方法前加上TestCase类的方法setUp(),在执行每一次测试方法之前都会被调用,可把在测试方法中都需要的程序放在这里;最后加上tearDown()方法,在执行每一次方法后都会被调用。
JUit4:与JUit3不同的是,在JUit4中是在方法前用注解
@BeforeClass:globeInit(),无论执行多少测试方法,它只执行一次,且运行在最前
@Before:把方法注解成Before,init()与JUit3中的setUp()方法作用一样
@After:把方法注解成After,destroy()与JUit3中的tearDown ()方法作用一样
@AfterClass:无论执行多少测试方法,它只执行一次,且运行在最后
下面分别以JUit3和JUit4为例子来运行测试:
例1.JUit3
源代码:
package com.sinyee.unit;
public class ArrayUnit {
/**
* 传入一个数组,返回该数组的最大值
* @param array
* @return
*/
public getMaxValue(int[] array) throws Exception {
if (array==null) {
throw new NullPointerException(空指针异常);
} if (array.length == 0) {
throw new ArrayIndexOutOfBoundsException(数组不能为空!);
} int temp = array[0];
for (int i = 1; i array.length; i++) {
if (temp array[i]) {
array[i] = temp;
}
}
// 取出该数组的最大值
return temp;
} }
Junit3测试代码
package com.sinyee.unit;
import junit.framework.TestCase;
public class ArrayTest extends TestCase {
//设置类的成员变量,可以供所有的方法调用
private ArrayUnit aUnit;
/**
* 该setUp()方法为TestCase里面的方法
* 作用:在执行调用测试方法之前,会先调用该setUp方法
*/
@Override
protected void setUp() throws Exception { //实例化数组工具对象
aUnit=new ArrayUnit();
System.out.println(setUp());
}
/**
* 求数组最大值的测试用例1:数组不为空
*/
public void testGetMaxValue1(){
//定义一个array数组
int[] array={40,3,2,6,9,30,4};
try {
//调用求数组最大值方法
int actual = aUnit.getMaxValue(array);
//期望值为40
int expected=40;
//断言actual==expect
assertEquals(expected, actual);
} catch (Exception e) {
e.printStackTrace();
fail();
}
}
/**
* 求数组最大值的测试用例2:数组为空
文档评论(0)