白盒测试案例分析(在十个球中找一个假球),并在Junit下进行测试

题目

使用白盒测试用例设计方法为下面的程序设计测试用例(基本路径测试)并Junit下测试:程序要求:10个铅球中有一个假球(比其他铅球的重量要轻),用天平三次称出假球。程序设计思路:第一次使用天平分别称5个球,判断轻的一边有假球;拿出轻的5个球,取出其中4个第二次称,两边分别放2个球:如果两边同重,则剩下的球为假球;若两边不同重,拿出轻的两个球称第三次,轻的为假球。

待测程序代码

在这里插入代码片
public class SearchBall {
    private static int x[]=new int[10];
    public SearchBall(){}
    public void setBWeight(int w[]){
        for(int i=0;i<w.length;i++){
             x[i]=w[i];
        } 
    }
    public String BeginSearch(){
        if(x[0]+x[1]+x[2]+x[3]+x[4]<x[5]+x[6]+x[7]+x[8]+x[9]){
            if(x[1]+x[2]==x[3]+x[4]){
                return "1号是假球";
            }
            if(x[1]+x[2]<x[3]+x[4]){
                if (x[1]<x[2]) {
                    return "2号是假球";
                 }else {
                    return "3号是假球";
                 }
             }else {
                if (x[3]<x[4]){
                    return "4号是假球";
                }
                else{
                    return "5号是假球";
                }
             }
        }else {
            if(x[6]+x[7]==x[8]+x[9]){
                return "6号是假球";
            }
            if(x[6]+x[7]<x[8]+x[9]) {
                if (x[6]<x
  • 5
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
假设我们有一个简单的 Java 类,它的作用是将两个整数相加并返回结果。我们可以编写一些 JUnit 白盒测试测试这个类的不同方面。下面是一个可能测试案例: ```java import org.junit.*; import static org.junit.Assert.*; public class AdderTest { private Adder adder; @Before public void setUp() { adder = new Adder(); } @Test public void testAddPositiveNumbers() { int result = adder.add(2, 3); assertEquals(5, result); } @Test public void testAddNegativeNumbers() { int result = adder.add(-2, -3); assertEquals(-5, result); } @Test public void testAddZero() { int result = adder.add(0, 0); assertEquals(0, result); } @Test(expected = IllegalArgumentException.class) public void testAddMaxValue() { int result = adder.add(Integer.MAX_VALUE, 1); } } ``` 这个测试案例包括四个测试方法和一个 `setUp()` 方法。在 `setUp()` 方法中,我们创建了 `Adder` 类的一个实例,这样在测试方法中就可以使用它。 第一个测试方法 `testAddPositiveNumbers()` 测试了当给定两个正数时,`add()` 方法是否正确地返回它们的和。第二个测试方法 `testAddNegativeNumbers()` 测试了当给定两个负数时,`add()` 方法是否正确地返回它们的和。第三个测试方法 `testAddZero()` 测试了当给定两个零时,`add()` 方法是否正确地返回零。最后一个测试方法 `testAddMaxValue()` 测试了当给定的两个数中有一个是 `Integer.MAX_VALUE` 时,`add()` 方法是否会抛出 `IllegalArgumentException` 异常。 这些测试案例覆盖了 `Adder` 类的不同方面,包括正数、负数、零和边界情况。它们可以帮助我们确保 `Adder` 类的 `add()` 方法能够正确地工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值