一. 安装配置插件(IntelliJ IDEA)
- 在项目中选择file -->Settings–>Plugins–>Marketplace,搜索Junit,选择下载量最大的点击Install安装就可以了,安装插件以后需要重启IDEA

- 修改JUnitGenerator V2.0的配置。
Default Template选择JUnit 4(可不执行下面其他操作)
如果需要自动生成测试代码和java类在同一包下,不匹配maven项目标准测试目录:
修改Output Path为:${SOURCEPATH}/../../test/java/${PACKAGE}/${FILENAME},

并修改测试用例模板。模板中生成的package的包名需去掉test。

二. JUnit注解+断言
| 注解 | 描述 |
|---|---|
| @Test | 测试注解,标记一个方法可以作为一个测试用例 。 |
| @Before | 表示该方法必须在类中的每个测试之前执行,以便执行某些必要的先决条件。 |
| @BeforeClass | 指出这是附着在静态方法必须执行一次并在类的所有测试之前,这种情况一般用于测试计算、共享配制方法(如数据库连接)。注意:方法必须为静态方法。 |
| @After | 表示该方法在每项测试后执行 (如执行每一个测试后重置某些变量,删除临时变量等)。 |
| @AfterClass | 当需要执行所有测试在JUnit测试用例类后执行,AlterClass注解可以使用以清理一些资源(如数据库连接),注意:方法必须为静态方法。 |
| @Ignore | 当想暂时禁用特定的测试执行可以使用这个注解,每个被注解为@Ignore的方法将不再执行 |
| @Runwith | 放在测试类名之前,用来确定这个类怎么运行的。也可以不标注,会使用默认运行器。 |
| @Parameters | 用于使用参数化功能。 |
| @SuiteClasses | 用于套件测试 |
| 断言 | 描述 |
|---|---|
| void assertEquals([String message],expected value,actual value) | 断言两个值相等。值类型可能是int,short,long,byte,char,Object,第一个参数是一个可选字符串消息 |
| void assertTrue([String message],boolean condition) | 断言一个条件为真 |
| void assertFalse([String message],boolean condition) | 断言一个条件为假 |
| void assertNotNull([String message],java.lang.Object object) | 断言一个对象不为空(null) |
| void assertNull([String message],java.lang.Object object) | 断言一个对象为空(null) |
| void assertSame([String message],java.lang.Object expected,java.lang.Object actual) | 断言两个对象引用相同的对象 |
| void assertNotSame([String message],java.lang.Object unexpected,java.lang.Object actual) | 断言两个对象不是引用同一个对象 |
| void assertArrayEquals([String message],expectedArray,resultArray) | 断言预期数组和结果数组相等, 数组类型可能是int,short,long,byte,char,Object |
三. Junit执行过程(注解以及断言的使用)
- 创建一个四则运算的被测试类
public class Calculator {
public int add(int a, int b)
{
return a + b;
}
public int subtract(int a, int b)
{
return a - b;
}
public int multiply(int a, int b)
{
try{
Thread.sleep(500);
}catch (InterruptedException e) {
e.printStackTrace();
}
return a * b;
}
public int divide(int a, int b) throws Exception
{
if (0 == b)
{
throw new Exception("除数不能为0");
}
return a / b;
}
}
-
生成测试类:
在待编写测试的java类源码块上按快捷键Alt + Insert。选择JUnit Test->JUnit 4;
在待编写测试的java类源码块上按快捷键Ctrl + Shift + T;
光标定位到待编写测试的java类源码块,选择code->Generate,后面的步骤和方法1一样。在测试类中编写测试方法
public class CalculatorTest { private static Calculator calculator = new Calculator(); @BeforeClass public static void setUpBeforeClass() throws Exception{ System.out.println("@BeforeClass"); } @AfterClass public static void tearDownAfterClass() throws Exception{ System.out.println("@AfterClass"); } @Before public void setUp() throws Exception { System.out.println("测试开始"); } @After public void tearDown() throws Exception { System.out.println("测试结束"); } @Test public void testAdd() { int add = calculator.add(1, 2); Assert.assertEquals(3,add); } @Test public void testSubtract() { int subtract = calculator.subtract(5, 2); Assert.assertEquals(3, subtract); } @Test(timeout = 300) public void testMultiply() { int multiply = calculator.multiply(3, 4); System.out.println(multiply); } @Test(expected = ArithmeticException.class) public void testDivide() { calculator.divide(4, 2); } }
本文介绍了如何在IntelliJ IDEA中安装配置Junit插件,详细讲解了JUnit的注解和断言,并通过四则运算类的测试案例,演示了JUnit的执行过程和测试方法的生成方式。
1154

被折叠的 条评论
为什么被折叠?



