熟悉并完成白盒题目:
十分重要:写白盒一定按照格式要求有头部部分就马上写一个尾部部分出来!!!
下列流程图中变量a、b、c、d均为非负整数,编写程序实现相应分析处理,并设计测试数据进行语句覆盖测试。要求a、b、c、d取最小可能值。
import java.util.Scanner; public class class1 { public static void main(String[] args) { try { Scanner sc = new Scanner(System.in); System.out.println("请输入a,b,c,d的值:"); int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt(); int d = sc.nextInt(); double y; if(a>0&&b>0&&c>0&&d>0) { if ((a>12&&b<13)&&(c>4||d<20)) { y = 3*a+10*b+5*d-c; System.out.println("y的值为:"+y); } else { y = 10*d-(a+b)*c/5; System.out.println("y的值为:"+y); } } else { System.out.println("a,b,c,d不为非负整数"); } } catch (Exception e) { System.out.println("异常错误"); } } }
根据下列流程图编写程序实现相应处理,并设计测试数据进行判定覆盖。输入数据打印出“输入x值:”、“输入y值:”。
import java.util.Scanner; public class class { public static void main(String[] args) { try { Scanner sc = new Scanner(System.in); System.out.println("输入x值:"); int x = sc.nextInt(); System.out.println("输入y值:"); int y = sc.nextInt(); double j; if(x>60&&y<35) { j = 10*x-y; System.out.println("j的值为:"+j); } else { if (x==25&&y>50) { j = y*Math.log(x+10); System.out.println("j的值为:"+j); } else { j = (x-y)*(Math.pow(10,5)%7); System.out.println("j的值为:"+j); } } } catch (Exception e) { System.out.println("异常错误"); } } }
进行系统注册时通常需要输入用户名和密码,其中用户名要求由8个字母字符组成、密码由6个(含6)以上数字字符组成。满足要求,则提示“注册成功”,否则根据实际情况提示“**不符合要求”(**为用户名或密码)。编写程序实现注册信息的输入,并设计测试数据进行语句覆盖测试。输入数据打印出“输入用户名:”、“输入密码:”。
import java.util.Scanner; public class class4 { public static void main(String[] args) { try { String reg1 = "^[a-zA-z]{"+8+"}$"; String reg2 = "^[0-9]{"+6+"}$"; Scanner sc = new Scanner(System.in); System.out.println("请输入新用户名:"); String user = sc.next(); System.out.println("请输入密码:"); String passwd = sc.next(); if(!user.matches(reg1)) { System.out.println("用户名不符合要求"); } else if(!passwd.matches(reg2)) { System.out.println("密码不符合要求"); } else if(user.matches(reg1)&&passwd.matches(reg2)) { System.out.println("注册成功"); } } catch (Exception e) { System.out.println("异常错误"); } } }
填写快递单时通常需要确定接收人的姓名、手机号和地址。其中要求手机号是11位数字字符,地址为字母开头的10个(含10)以内字母或字母数字共同组成。填写正确则提示“OK”,否则根据实际情况提示“**不符合要求”(**为手机号或地址),退出。编写程序实现此快递单信息的输入,并设计测试数据进行判定覆盖测试。输入数据打印出“输入手机号:”、“输入地址:”。
import java.util.Scanner; public class class5 { public static void main(String[] args) { try { String reg1="^\\d{11}$"; String reg2="[a-z]([0-9a-zA-Z]{"+10+"})$"; Scanner sc = new Scanner(System.in); System.out.println("输入手机号"); String num = sc.next(); System.out.println("输入地址"); String add = sc.next(); if(!num.matches(reg1)) { System.out.println("手机号不符合要求"); } else if(!add.matches(reg2)) { System.out.println("地址不符合要求"); } else if (num.matches(reg1)&&add.matches(reg2)) { System.out.println("OK"); } } catch (Exception e) { System.out.println("抛出异常"); } } }
根据下列流程图编写程序实现相应分析处理并显示结果,并设计测试数据进行语句覆盖测试。输入数据打印出“username:”、“password:”。输出文字内容。
import java.util.Scanner; public class class6 { public static void main(String[] args) { try { Scanner sc = new Scanner(System.in); System.out.print("请输入用户名:"); String username = sc.next(); System.out.print("请输入密码"); String password = sc.next(); if(username==null&&password==null){ System.out.println("用户名或密码不能为空"); } else { if(username=="admin"&&password=="123"){ System.out.println("登录成功"); } else { if (username!="admin"&&password=="123") { System.out.println("请输入正确的用户名"); } else { if(username=="admin"&&password!="123"){ System.out.println("请输入正确的密码"); } else { if (username!="admin"&&password!="123") { System.out.println("请输入正确的用户名和密码"); } } } } } } catch (Exception e) { System.out.println("异常错误信息"); } } }
根据输入的年份和月份判断月份的天数,并设计测试数据进行语句覆盖测试。若月份不在有效范围之内,应提示:“月份输入不正确。”。月份不为2月,根据输入月份输出对应的月份天数。月份为2月,根据年份判断如为普通闰年,输出2月份正确天数;如为世纪闰年,输出2月份正确天数;不为闰年输出2月份天数。输入数据打印出“输入年:”、“输入月:”;输出内容格式:“year年month月份的天数是days天。”year、month为输入的值,days为判断得到的天数值。其中变量year、month均须为正整数。
import java.util.Scanner; public class class7 { public static void main(String[] args) { try { Scanner sc = new Scanner(System.in); System.out.println("输入年:"); int year = sc.nextInt(); System.out.println("输入月:"); int month = sc.nextInt(); int days; if (year>0) { if(month>=1&&month<=12) { if(month==1||month==3||month==5||month==7||month==8||month==10||month==12) { days = 31; } else if(month==2){ if((year%4==0&&year%100!=0)||year%400==0) { days = 29; } else { days = 28; } } else { days = 30; } System.out.println(year+"年"+month+"月份的天数是"+days+"天"); } else { System.out.println("月份输入不正确。"); } } else { System.out.println("输入的年份不正确"); } } catch (Exception e) { System.out.println("异常错误信息"); } } }
根据输入的三条边值判断能组成何种三角形,并设计测试数据进行判定覆盖测试。三条边为变量a、b、c,范围为1≤边值≤10,不在范围内,提示“输入边值不在范围内,请重新输入”。不满足任意两边之和必须大于第三边,提示“输入边值不能组成三角形”。输入边值能组成三角形,只有2条边相同,显示“能组成等腰三角形”;三条边相等,显示“能组成等边三角形”;边值不满足特殊三角形显示“能组成普通三角形”。
import java.util.Scanner; public class class8 { public static void main(String[] args) { try { Scanner sc = new Scanner(System.in); System.out.println("输入a的值"); int a = sc.nextInt(); System.out.println("输入b的值"); int b = sc.nextInt(); System.out.println("输入c的值"); int c = sc.nextInt(); if (a>=1&&a<=10&&b>=1&&b<=10&&c>=1&&c<=10) { if(a+b>c&&b+c>a&&b+c>a) { if(a==b&&b==c) { System.out.println("能组成等边三角形"); } else if(a==b||b==c||a==c) { System.out.println("能组成等腰三角形"); } else { System.out.println("能组成普通三角形"); } } else { System.out.println("输入边值不能组成三角形"); } } else { System.out.println("输入边值不在范围内,请重新输入"); } } catch(Exception e) { System.out.println("抛出异常"); } } }
根据下列流程图编写程序实现相应分析处理并显示结果,并设计最少的测试数据进行判定条件覆盖测试。输入数据打印出“输入x值:”、“输入y值:”。输出文字“a的值:”和a的值;输出文字“b的值:”和b的值;输出文字“c的值:”和c的值;输出文字“d的值:”和d的值;其中变量x、y均须为整型
import java.util.Scanner; public class class9 { public static void main(String[] args) { try { Scanner sc = new Scanner(System.in); System.out.println("输入x值:"); int x = sc.nextInt(); System.out.println("输入y值:"); int y = sc.nextInt(); double a,b,c,d; if(x>9&&y>4) { if (x>20||y>10) { d = Math.pow(x+y, 5); System.out.println("d的值:" + d); } else { c = Math.sin(x + y); System.out.println("c的值:" + c); } } else { if (x>0||y>0) { a = Math.pow(x, y); System.out.println("a的值:" + a); } else { b = y + x; System.out.println("b的值:" + b); } } } catch (Exception e) { System.out.println("异常错误信息"); } } }
根据下列流程图编写程序实现相应分析处理并显示结果,并设计最少的测试数据进行语句覆盖测试。输入数据打印出“输入x值:”、“输入y值:”。输出文字“a=x:”(x为2、3或4);其中变量x、y均须为整型。
import java.util.Scanner; public class class10 { public static void main(String[] args) { try { Scanner sc = new Scanner(System.in); System.out.println("输入x的值"); int x = sc.nextInt(); System.out.println("输入y的值"); int y = sc.nextInt(); int a; if (x>=80&&y>=60) { if(x>=90||y>=90) { } else { a = 2; System.out.println("a=" +a); } } else { if(x<=70||y<=70) { a = 3; System.out.println("a=" +a); } else { a= 4; System.out.println("a=" +a); } } } catch (Exception e) { System.out.println("异常错误"); } } }
明日计划:
1.在训练中注意时间分配做题
2.加深loadrunner、jmeter
3.加深自动化测试