软件测试——Junit的使用

本文介绍如何使用Junit进行参数化测试,通过检测不同输入下三角形类型的实例,展示了从数据准备到运行测试的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  Junit是一个很方便易用的软件测试工具,这里以测试检测三角形是等腰、等边还是一般三角形的方法为例,介绍Junit的用法。

1.安装配置

  在Build Path添加junit-4.12.jar和hamcrest-all-1.3.jar,新建Junit Test Case,选择test文件夹,并保持其他路径一致。

  如遇到No Junit tests found错误,请右键test文件夹,选择Build Path--Use as source folder.

  

2.编写用例并测试

  使用assertEquals(excepted, actual)进行测试,将测试用例存储在Collection里。

 1 package lab1;
 2 
 3 import static org.junit.Assert.assertEquals;
 4 import java.util.Arrays;
 5 import java.util.Collection;
 6 
 7 import org.junit.Before;
 8 import org.junit.Test;
 9 import org.junit.runner.RunWith;
10 import org.junit.runners.Parameterized;
11 import org.junit.runners.Parameterized.Parameters;
12 
13 @RunWith(Parameterized.class)
14 public class Lab1Test {
15 
16     private int input1;
17     private int input2;
18     private int input3;
19     private String expected;
20     private Lab1 test;
21     
22     public Lab1Test(int input1,int input2,int input3, String expected){
23         this.input1 = input1;
24         this.input2 = input2;
25         this.input3 = input3;
26         this.expected = expected;
27     }
28     
29     @Before
30     public void setUp(){
31         test = new Lab1();
32     }
33     
34     @Parameters
35     public static Collection<Object[]> getData(){
36         return Arrays.asList(new Object[][]{
37             {2, 3, 4, "一般三角形"},
38             {4, 7, 9, "一般三角形"},
39             {5, 5, 5, "等边三角形"},
40             {1, 1, 1, "等边三角形"},
41             {6, 7, 7, "等腰三角形"},
42             {4, 7, 4, "等腰三角形"},
43             {2, 2, 3, "等腰三角形"},
44             {1, 6, 4, "输入的边不能构成三角形"},
45             {0, -1, 3, "输入的边不能构成三角形"},
46         });
47     }
48     
49     @Test
50     public void testCheck() {
51         assertEquals(this.expected, test.check(input1, input2, input3));
52     }
53 }

  Run As -- Junit Test即可看到每个用例的结果:

  

  附上Lab1的check():

 1 public String check( int a, int b, int c){
 2     //排序使a<=b<=c
 3     int temp;
 4     if( a > b){
 5         if( a > c){
 6             temp = c;
 7             c = a;
 8             if( b > temp)
 9                 a = temp;
10             else{
11                 a = b;
12                 b = temp;
13             }
14         }else{
15             temp = a;
16             a = b;
17             b = temp;
18         }
19     }else if( b > c){
20         temp = c;
21         c = b;
22         b = temp;
23     }
24     
25     if( a <= 0 || a + b <= c)
26         return "输入的边不能构成三角形";
27     else if (a == b || b == c)
28         return a == c ? "等边三角形" : "等腰三角形";
29     else
30         return "一般三角形";
31 }

 

转载于:https://www.cnblogs.com/funcode/p/5291888.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值