您好,欢迎来到花图问答。
搜索
您的当前位置:首页合肥学院软件测试考点整理

合肥学院软件测试考点整理

来源:花图问答
选择25题(25分)判断题10题(10分)简答题4题(20分)综合题4题(45分) 考点:一、对一些基本概念的理解

比如:什么是软件测试?软件测试的分类?什么是白盒测试?什么是黑盒测试?等等 1. 什么是软件测试

IEEE 使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。 Myers 测试是为发现错误而执行一个程序或系统的过程 2. 软件测试分类

视角1:测试技术 1.白盒测试 2.黑盒测试 3.灰盒测试

视角2:开发阶段 1.单元测试 2.集成测试 3.确认测试 4.系统测试

5.验收测试 6.性能测试 7.回归测试

视角3:执行状态 1.静态测试 2.动态测试

视角4:执行主体 1.开发方测试 2.用户测试 3.第三方测试

视角5:特殊测试 1.国际化测试 2.即兴测试 3.兼容性测试 4.安全性测试

5.可用性与易获得性测试 6.面向对象系统测试 7.Web测试

白盒测试:基于软件代码的内部逻辑来设计测试用例。测试退出条件是代码覆盖率.一般由

开发人员完成.

黑盒测试:基于需求和功能性,不需要了解内部的设计和代码,通过软件外部表现来发现缺

陷和错误.

灰盒测试:介于白盒测试与黑盒测试之间的技术,既关注软件外部表现,又注意程序内部逻

辑结构.

单元测试:对最小的软件设计单元——模块的验证工作.

集成测试:验证模块间接口是否正确,多个模块是否能协调一致地正确实现需求和功能. 确认测试:验证软件是否可以按照用户合理的期望方式工作. 系统测试:测试整个系统的行为和错误属性.

验收测试:保证客户对所有的需求都满意.(α测试和β测试)

性能测试:评价系统响应时间、吞吐率等系统属性,并与不同版本或竞争产品进行比较. 回归测试:保证增强型或改正型修改使软件正常运行,不影响已有功能.

静态测试:不运行程序,而通过人工对程序和文档进行分析与检查.

动态测试:通过人工或利用工具运行程序进行检查,分析程序执行状态和外部表现.

二、逻辑覆盖测试(最少测试用例数计算 测试覆盖准则)

六种逻辑覆盖从弱到强的排列顺序是:

语句覆盖->判定覆盖->条件覆盖->判定-条件覆盖->条件组合覆盖->路径覆盖 例题1:

void DoWork (int x,int y,int z){

int k=0,j=0;

if ( (x>3)&&(z<10) ) {

k=x*y-1;

j=sqrt(k); //语句块1

} if ( (x==4)||(y>5) ){

j=x*y+10;

} //语句块2 j=j%3; //语句块3 }

由这个流程图可以看出, 该程序模块有4条不同的路径: P1:(a-c-e) P2:(a-c-d) P3:(a-b-e) P4:(a-b-d)

将里面的判定条件和过程记录如下: 判定条件M={x>3 and z<10} 判定条件N={x=4 or y>5}

1、 语句覆盖

测试用例输入 x=4,z=5,y=8 输出 k=31,j=0 k=0,j=0 x>3and z<10 k=x*y-1 j=sqrt(k) x=4 or y>5 j=j%3 判定M的取值 T 判定N的取值 T 覆盖路径 P1(a-c-e) 2、判定覆盖 p1和p4可以作为测试用例,其中p1作为取真的路径,p4作为取反的路径。 测试用例输入 x=4,z=5,y=8 x=2,z=11,y=5 输出 k=31,j=0 k=0,j=0 判定M的取值 T F 判定N的取值 T F 覆盖路径 P1(a-c-e) P4(a-b-d) 也可以让测试用例测试路径P2和P3。相应的两组输入数据如下: 测试用例输入 x=5,z=5,y=4 x=4,z=11,y=6 输出 k=19,j=sqrt(19)%3 k=0,j=1 判定M的取值 T F 判定N的取值 F T 覆盖路径 P2(a-c-d) P3(a-b-e) 3、条件覆盖

对于M:x>3取真时T1,取假时F1; z<10取真时T2,取假时F2; 对于N:x=4取真时T3,取假时F3; y>5取真时T4,取假时F4。 条件:x>3,z<10,x=4,y>5

条件:x<=3,z>=10,x!=4,y<=5

根据条件覆盖的基本思路,和这8个条件取值,组合测试用例如表所示: 测试用例输入 输出 取值条件 具体取值条件 x=4,z=5,y=8 x=3,z=11,y=5 测试用例输入 x=4,z=5,y=8 x=3,z=11,y=5

k=31, j=0 k=0, j=0 输出 k=31, j=0 k=0, j=0 T1,T2,T3,T4 F1,F2,F3,F4 取值条件 T1,T2,T3,T4 F1,F2,F3,F4 x>3,z<10,x=4,y>5 x<=3,z>=10,x!=4,y<=5 具体取值条件 x>3,z<10,x=4,y>5 x<=3,z>=10,x!=4,y<=5 覆盖路径 P1(a-c-e) P4(a-b-d) 覆盖路径 P1(a-c-e) P4(a-b-d) 4、判定/条件覆盖 5、组合覆盖

条件组合

1)x>3,z<10 2)x>3,z>=10 3) x<=3,z<10 4)x<=3,z>=10 5)x=4,y>5 6)x=4,y<=5 7)x!=4,y>5 8)x!=4,y<=5 测试用例输入 x=4,z=5,y=6 x=4,z=10,y=5 x=3,z=5,y=6 z=3,z=10,y=5 6、路径覆盖 测试用例输入 x=4,z=5,y=8 x=5,z=5,y=4 x=4,z=11,y=6 x=2,z=11,y=5

例题2:

输出 k=31,j=0 k=19,j=sqrt(19)%3 k=0,j=1 k=0,j=0 覆盖条件取值 T1,T2,T3,T4 T1,T2,F3,F4 T1,F2,T3,T4 F1,F2,F3,F4 覆盖条件组合 1,5 1,8 2,5 4,8 覆盖路径 P1(a-c-e) P2(a-c-d) P3(a-b-e) P4(a-b-d) 输出 k=23, j=1 k=0, j=0 k=14 j=1 k=0, j=2 覆盖条件取值 T1,T2,T3,T4 T1,F2,T3,F4 F1,T2,F3,T4 F1,F2,F3,F4 覆盖条件组合 1,5 2,6 3,7 4,8 覆盖路径 P1(a-c-e) P2(a-c-d) P3(a-b-e) P4(a-b-d)

三、黑盒测试(常见的黑盒测试方法、主要掌握等价类划分法、决策表、因果图法)

等价类划分、边界值分析、因果法、决策表、基于模型的测试、正交数组测试 等价类划分:如果软件行为对一组值来说是相同的,则称这组值为等价类;

边界值分析:

能有效捕获出现在边界处的缺陷的一种测试方法; 利用了缺陷更容易出现在边界处的事实

因果图(Cause and Effect Diagram): 将导致问题的结果划分为多种因素,并描述这些因素间的关系,从而找出问题根源的复杂问题分析工具。

饮料自动售货机规格说明

(1)自动售货机有两种饮料(橙汁和啤酒)供人们选择,售价均为5角。 (2)售货机可以接收5角钱或1元钱的硬币,需要找零钱。

例如,投入1元硬币买橙汁,如果售货机没有零钱找,则退回1元硬币,并红灯显示〖零钱找完〗 。 原因: 结果: C1:售货机有零钱 E1:售货机〖零钱找完〗灯亮 C2:投入1元硬币 E2:退还1元硬币 C3:投入5角硬币 E3:退还5角硬币 C4:押下橙汁按钮 E4:送出橙汁饮料 C5:押下啤酒按钮 E5:送出啤酒饮料

决策表:

把作为条件的所有输入的组合以及对应输出都罗列出来形成的表格。

根据输入3条边(a, b, c)边长的值来判断是否构成三角形,如果是三角形,判断

是等腰三角形、等边三角形、不等边三角形和非三角形。

为简单起见:假定a, b, c只能输入大于0的数,不考虑输入为空或非数字的情况

基本路径测试(控制流图)见白盒测试例题2

单元测试(什么是单元测试?单元测试的关注点?错误类型?自动化测试工具使用,Junit部分代码填空)

单元测试(Unit Testing)/模块测试(Module Testing):

对最小的软件设计单元(模块/源程序单元)的验证工作

意义 1.消除软件单元本身的不确定性 2.其它测试阶段的必要的基础环节

测试关注点 测试用例应发现的错误 1.模块功能 比较在不同数据类型间进行 2.内部逻辑处理 不正确的逻辑操作或优先级 3.数据结构 由于精度错误,该相等的地方不能相当 4.性能 不正确的变量 5.安全 不正常的循环终止 循环不能退出 循环变量修改错误

集成测试(什么是集成测试?集成测试方法、策略?增量式、混合式的优缺点比较)

集成测试(Integration Testing):

把单独的软件模块结合在一起作为整体接受测试 策略:瞬时集成测试 增量集成测试

增量集成测试

特点:将程序分成小的部分进行构造和测试

优点:1.错误容易分离和修正 2.接口容易进行彻底测试 缺点:会有额外开销,但能大大减少发现和修正错误的时间 混合式集成

集成顺序:综合自顶向下和自底向上,是实际测试中的实用集成测试策略。

特点:开发小组对各自的低层模块向上集成;专门的集成小组进行自顶向下集成;

系统测试(什么是系统测试?系统测试方法?)

系统测试:对完整集成后的产品和解决方案

进行测试,用来评价系统对具体 需求规格说明的功能和非功能的 符合性的测试

性能测试(列举性能测试指标)

性能测试:为了获取或验证系统性能指标而进行的测试。 性能测试评价响应时间、吞吐率和系统的使用情况,执行所要求的功能以对同一产品的不同版本或不同的竞争产品 进行比较

性能测试指标:吞吐量/处理能力 负载 响应时间 在线用户数 并发用户数

关联测试工具(选择)web测试 面向对象测试 面向对象测试

• 面向对象软件测试是根据面向对象的软件开发过程结合面向对象的特点提出的。它包括: – 分析与设计模型测试技术 – 类测试技术(单元测试) – 对象交互测试技术(集成测试) – 类层次结构测试技术(集成测试) – 面向对象系统测试技术

面向对象测试模型

面向对象的开发模型突破了传统的瀑布模型,将开发分为面向对象分析(OOA),面向对象设计(OOD),和面向对象编程(OOP)三个阶段

类测试的目的主要是确保一个类的代码能够完全满足类的说明所描述的要求。 缺点:开发人员对类说明的任何错误理解,都会影响到测试。 • 具体说类测试的方法有两种 – 代码检查 – 执行测试用例

面向对象程序具有动态特性,程序的控制流往往无法确定,因此也只能对整个编译后的程序做基于黑盒子的集成测试。

web测试

1.对一个WEB服务器应测试它的哪些性能指标? Web服务器指标:

* 指服务器CPU占用率 * 失败的请求; * 可用内存数 * 成功的点击次数; * 物理磁盘读写时间情况; * 失败的点击次数; * 平均每秒钟响应次数=总请求时间 * 每秒点击次数; / 秒数; * 每秒成功的点击次数; * 成功的请求; * 每秒失败的点击次数; * 尝试链接数;

3、WEB网站压力测试的步骤是什么? 步骤如下:

* 确定接受请求并完成响应的最大允许的延时。 * 估计WEB应用程序的最大并发用户数量。

* 模拟用户请求,以一个比较小的负载开始,逐渐增加模拟用户的数量,直到WEB应用程序的相应延时超过最大延时。

* 如果负载比估计的用户数量小,那么应该优化这个WEB程序,否则你选择性的执行优化。

4、什么叫WEB测试?

“Web 测试”也称为声明性 Web 测试,它由一系列 HTTP 请求组成。Web 测试通过发出 HTTP 请求在协议层工作。Web 测试不运行 JavaScript。Web 测试用于测试 Web应用程序的功能以及在负载下测试 Web 应用程序。Web 测试可用于性能测试和压力测试。

自动化测试工具 QTP WinRunner Rational Robot AdventNet QEngine

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuowenda.com 版权所有 湘ICP备2023022495号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务