JUnit创建套件测试
程序员文章站
2024-03-15 19:16:06
...
测试套件是一些测试不同类用例,可以使用@RunWith和@Suite注解运行所有东西在一起。如果有很多测试类,想让它们都运行在同一时间,而不是单一地运行每个测试,这是非常有用的。
当一个类被注解为@RunWith, JUnit 将调用被在其中注解,以便运行需要测试的类,而不使用内置的 JUnit 运行方法。
测试类1:
package com.shirley;
public class Calculate {
public int add(int var1,int var2){
System.out.println("add---var1:"+ var1 + " var2:"+var2);
return var1+var2;
}
public int sub(int var1,int var2){
System.out.println("sub---var1:"+ var1 + " var2:"+var2);
return var1-var2;
}
public int div(int var1,int var2){
System.out.println("div---var1:"+ var1 + " var2:"+var2);
return var1/var2;
}
public int mult(int var1,int var2){
System.out.println("mult---var1:"+ var1 + " var2:"+var2);
return var1*var2;
}
}
测试类2:package com.shirley;
public class Log {
public void printLogBefore() {
System.out.println("-----before----");
}
public void printLogAfter(){
System.out.println("-----end----");
}
}
现在我要测试这两个类,方法可以是写两个JUnit测试类,分别运行被测试类。例如
被测试类1:
package com.shirley;
import org.junit.Test;
import com.shirley.Calculate;
public class CalculateTest {
Calculate calculate = new Calculate();
int var1 = 2;
int var2 = 5;
@Test
public void addTest() {
int result = calculate.add(var1, var2);
System.out.println("TEST ADD METHOD---result:"+result);
}
@Test
public void subTest(){
int result = calculate.sub(var1, var2);
System.out.println("TEST SUB METHOD---result:"+result);
}
@Test
public void divTest(){
int result = calculate.div(var1, var2);
System.out.println("TEST DIV METHOD---result:"+result);
}
@Test
public void miltTest(){
int result = calculate.mult(var1, var2);
System.out.println("TEST MULT METHOD---result:"+result);
}
}
被测试类2:
package com.shirley;
import static org.junit.Assert.*;
import org.junit.Test;
public class LogTest {
Log log = new Log();
@Test
public void printLogBefore() {
fail("Not yet implemented");
log.printLogBefore();
}
@Test
public void printLogAfter() {
fail("Not yet implemented");
log.printLogAfter();
}
}
分别运行上面的被测试类可以进行测试。但是这样单独运行不方便。有简单点的方式可以用一个被测试类对多个测试类进行测试。这种情况也可以一起测试,但是如果需要测试的模块比较多,这种方式不便于维护。可以采用创建套件测试。
选择需要装入套件对的测试类:
创建测试类,通过修改SuiteClasses中的测试类的顺序定义执行顺序
上一篇: Idea集成单元测试JUnit
下一篇: junit