白盒测试代码总结

键盘录入

Scanner,这个类就可以接受键盘输入的数字。

Scanner的使用:

键盘中输入常用操作

  1. next():

一定要读取到有效字符串才可以结束输入;

对于输入有效字符遇到的空格,next()方法会自动将其去掉;

只有输入有效字符后才能将其后面输入的空格作为分隔符或结束符。当有效字符出现后, 后面的再输入空格,那么空格后的元素就不再输出;

next()不能得到带有空格的字符串;

  1. nextLine();
  • 以Enter为结束符,可以返回输入回车之前的所有字符;
  • 可以获得空格;

 

Eg:

 注意:sc.nextInt中的Int是前面定义的整型int,其中首字母大写。

sc是第八行定义的变量。

 

 

 

 

 Number & Math 类方法:

1、xxxValue() 方法用于将 Number 对象转换为 xxx 数据类型的值并返回。

 

2、

compareTo()
将number对象与参数比较。

 3、equals()
判断number对象是否与参数相等。

4、toString()
以字符串形式返回值。 

5、

abs()
返回参数的绝对值。

 

 6、ceil()
返回大于等于( >= )给定参数的的最小整数,类型为双精度浮点型。

7、floor()
返回小于等于(<=)给定参数的最大整数 。

 

8、round()
它表示四舍五入,算法为 Math.floor(x+0.5),即将原来的数字加上 0.5 后再向下取整,所以,Math.round(11.5) 的结果为12,Math.round(-11.5) 的结果为-11。

 

9、

exp()
返回自然数底数e的参数次方。

 

 10、

log()
返回参数的自然数底数的对数值。

11、pow()
返回第一个参数的第二个参数次方。

 

12、

sqrt()
求参数的算术平方根。

 

13、sin()
求指定double类型参数的正弦值。

14、

cos()
求指定double类型参数的余弦值。

 15、tan()
求指定double类型参数的正切值。

16、asin()
求指定double类型参数的反正弦值。

17、

acos()
求指定double类型参数的反余弦值。

18、

atan()
求指定double类型参数的反正切值。

19、atan2()
将笛卡尔坐标转换为极坐标,并返回极坐标的角度值

20、

random()
返回一个随机数。

 

 

正则表达式例子:

import java.util.Scanner;


public class receiveAddress{
	public static void main(String[] args){
		
		Scanner sc=new Scanner(System.in);
		System.out.println("输入手机号:");
		String phonenum=sc.next();
		System.out.println("手机号:"+phonenum);
		System.out.println("输入地址:");
		String address=sc.next();
		System.out.println("地址:"+address);
		String regphone="^\\d{11}$";
		String regaddress="^[a-zA-Z]([a-zA-Z0-9]{1,9})$";
		if(!phonenum.matches(regphone))
		{
			System.out.println("电话号码不符合要求");
		}
		else if(!address.matches(regaddress))
		{
			System.out.println("地址不符合要求");
		}
		else if(phonenum.matches(regphone)&&address.matches(regaddress))	
		{
			System.out.println("OK");
		}
	}

}

白盒测试逻辑覆盖(语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖)

逻辑覆盖测试:

语句覆盖:每条语句至少执行一次

判定覆盖:每一判定的每个分支至少执行一次

条件覆盖:每一判定中的每个条件,分别按真、假至少各执行一次

判定/条件覆盖:同时满足判定覆盖和条件覆盖的要求

条件组合覆盖:求出判定中所有条件的各种可能组合值,每一可能的条件组合至少执行  一次

 

### 白盒测试代码走查练习 #### 走查概述 代码走查是一种由审查小组执行的白盒测试方法,旨在通过准备具有代表性的测试用例并沿着程序逻辑运行来检测潜在缺陷。此过程不仅涉及阅读和理解代码,还要求团队成员模拟程序执行流程以验证其行为是否符合预期[^2]。 #### 示例场景描述 假设有一个简单的函数`calculateDiscount(price, isMember)`用于计算商品折扣后的价格。如果顾客是会员,则给予额外5%的折扣;否则不享受此优惠。下面将展示如何对该函数实施一次完整的代码走查。 ```python def calculateDiscount(price, isMember): discount_rate = 0.95 if isMember else 1.0 final_price = price * discount_rate return round(final_price, 2) print(calculateDiscount(100, True)) # 应输出 95.0 print(calculateDiscount(100, False)) # 应输出 100.0 ``` #### 准备工作 - **参与者**: 邀请开发人员、测试工程师和其他相关人员组成评审小组。 - **材料准备**: 提供上述Python代码片段给每位参加者,并准备好几个预定义的输入参数集作为测试案例,比如`(price=100,isMember=True)` 和 `(price=100,isMember=False)`。 #### 执行过程 1. 审核员介绍背景信息及目标; 2. 小组共同审阅源码,关注变量初始化、条件判断分支处理等方面; 3. 使用提供的测试数据手动跟踪每一步骤的结果变化情况; 4. 对比实际输出与期望值之间的差异,记录任何异常现象或改进建议; 5. 讨论发现的问题及其解决方案,必要时调整原始实现方式。 #### 结果总结 经过仔细讨论后确认,在不同情况下调用`calculateDiscount()`均能返回正确的数值,证明当前版本满足业务需求。然而为了提高可维护性和清晰度,建议增加必要的注释说明以便后续开发者更容易理解和修改这段代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值