软件测试技术-习题(2025)(1)

更新时间: 试题数量: 购买人数: 提供作者:

有效期: 个月

章节介绍: 共有个章节

收藏
搜索
题库预览
四、解答题 1.论述性能测试的基本过程。 2.试论述一次性集成、增量式集成有各自些优缺点。 3.论述回归测试概念、回归存在的误区、回归测试的策略。 4.试针对如下程序代码设计测试脚本。 public class GCD { public int getGCD(int x,int y){ if(x<1||x>100) { System.out.println("数据超出范围!"); return -1; } if(y<1||y>100) { System.out.println("数据超出范围!"); return -1; } int max,min,result = 1; if(x>=y) { max = x; min = y; } else { max = y; min = x; } for(int n=1;n<=min;n++) { if(min%n==0&&max%n==0) { if(n>result) result = n; } } System.out.println("因数:"+result); return result; } } (1)设计测试脚本,对GCD类的getGCD方法实现语句覆盖测试。 (2)设计测试脚本,对GCD类的getGCD方法实现条件覆盖测试。 5.设有程序段ModuleA 和 ModuleB如下, public class ModuleA{ public static double operate(double x) { // 模块A内部进行处理 // ... double r = x/2; // 调用模块B double y = ModuleB.operate(r); // 继续处理 // ... return y; } } public class ModuleB { public static double operate(double r) { // 模块B内部进行处理 // ... double temp = Pi*r*r*r*4/3; // 继续处理 // ... double y = temp; return y; } } (1)阅读程序,请说明这两段程序合起来的功能是什么? (2)已知变量x一开始就有一定的误差△x,请分析 ModuleA.operate(x)执行完毕后,返回结果y的相对误差有多大? 3. 设有两段代码ModuleA 和 ModuleB如下,它们由不同的程序员开发。 (1)试分析对这两段代码进行集成测试时会出现什么问题? (2)试设计两个测试数据,一个能发现这一问题,另一个则不能发现这一问题。 public class ModuleA { /** * 实现把 str1 中包含的 str2 去掉后的内容返回的功能 * @param str1 字符串1 * @param str2 字符串2 * @param 返回处理的结果 */ public String operate(String str1, String str2) { return str1.replace(str2, ""); } } public class ModuleB { private ModuleA moduleA; public void setModuleA(ModuleA moduleA) { this.moduleA = moduleA; } /** * 模块B的具体处理操作中,调用了模块A的接口 */ public String operate(String str1, String str2) { // str1 待替换的目标串 // str2 原串 return moduleA.operate(str1, str2); } } 4.某连锁机构网站有注册账号5万个,平均1天大约有12000个用户要访问该系统,用户一般在7点——22点使用该系统,在一天的时间内,用户使用系统的平均时长约为0.5小时。假设用户登录访问该系统符合泊松分布,为进行并发测试,请估算系统的平均并发用户数C_avg和并发用户峰值数C_max。【缺少答案,请补充】