软件测试*
对于软件开发的测试阶段
目的:为了找出存在的错误
考点:黑盒测试和白盒测试的内容
测试方法
- 静态测试
- 动态测试
- 黑盒测试(不用去在乎软件的源代码只需要在乎输入和结果就行了)
考点:黑盒测试的概念和判断是否为合法的测试用例
例题:
一个程序根据输入的年份和月份计算该年中该月的天数,输入参数包括年份(正整数)月份(用1~12 表示)若用等价类划分测试方法进行测试,则(35)不是一个合适的测试用例(分号后表示测试的输出)。
(35)A.(2013,1;31)
B.(0,1;错误’)
C.(0,13;“错误’)
D.(2000,-1;“错误’)
分析:
年份、月份
A项:2013合法,1月合法,31为输出的结果合法;全部都合法
B项:0不合法,1合法,‘错误’合法;同时拥有合法和不合法的数据,是最为合适的测试用例
C项:0不合法,1不合法,‘错误’合法;不合法数据多,是不适合测试用例
- 白盒测试
考点:主要在逻辑覆盖的六个覆盖方法中,用某个覆盖方法需要哪几个测试用例
(1)逻辑覆盖
(2)循环覆盖
(3)基本路径测试
细节
(1)语句覆盖和路径覆盖的区别
(2)在路径覆盖中有一些细节的情况需要注意,比如在判断语句中的A||B时,要保证A和B都至少执行了一次,而不是判断了A就不判断B。
例题:下图所示的逻辑流实现折半查找功能,最少需要(34)个测试用例可以覆盖所有的可能路径。
A.1 B.2 C.3 D.4
答案:B环路复杂度
考点:流程图的环路复杂度是多少
MaCabe度量法:所有的箭头数量 – 语句数量 + 2
上图中:10 – 9 + 2 = 3
软件维护
以下考点:理解概念性的东西
- 在各个阶段都有维护
- 受开发文档影响
- 是软件开发阶段每个时期的关键目标
软件文档
- 只好不坏,有描述软件文档有不好的一面的时候时错误的
- 选项中有关键字“仅”是错误的
软件维护内容
- 正确性
- 适应性,软件维护过程中,根据需求做出修改
- 完善性,软件维护过程中扩充功能改善性能
- 预测性,针对于未来这种词
软件质量属性
考点:公式所对应的软件质量属性
- 可靠性,TF/(1+TF)
- 可用性,BF/(1+BF)
- 可维护性,1/(1+TR)
例题:计算机系统的(34)可以用MTBF/(1+MTBF)来度量,其中MTBF为平均失效间隔时间。
A.可靠性 B.可用性 C.可维护性 D.健壮性
答案:A
沟通路径
例题:开发需要8个人,且两两进行沟通,那么他们的沟通路径有多少条?
解答:8 * (8 – 1)/ 2 = 23条
解析:很简单
对系统路径进行估算
考点:概念性知识的理解
- COCOMO
- 静态单变量
- 静态多变量
- COCOMOⅡ
- 应用组装模型,对象点
- 早期设计阶段,功能点
- 体系结构阶段,代码行
例题:工作量估算模型COCOMOⅡ的层次结构中,估算选择不包括(20)。
A.对象点 B.功能点 C.用例数 D.源代码行
答案:C
pert图和项目活动图
此处内容详见软件设计师必考题总结【上午题】
文字叙述的项目活动图要会画
input A,n
for i = 2 to n
key = A[j]
j = i - 1
while k > 0 and A[j] > key
A[j + 1] = A[j]
j = j - 1
A[j + 1] = key
风险管理
介绍:
- 项目风险
- 技术风险
- 商业风险
风险识别
风险预测
- 可能性 P
- 后果 C
- 风险暴露度:RE = P * C 可能性 * 后果(后果:设立风险优先级的前提)
风险评估
- 关键语句:定义风险的参照水准
风险控制
- 避免,应对风险的最好计划就是主动避免
- 监控
- RMMM(监控和管理计划)
软件质量
质量模型:描述软件的质量特性
- ISO/IEC9126 软件质量模型
- 功能性:安全方面属于功能性里面的
- 效率
- 可靠性:技术方面
- 易使用性
- 可维护性
- 可移植性
例题:在Iso/1EC9126软件质量模型中,可靠性质量特性是指在规定的一段时间内和规定的条
件下,软件维持在其性能水平有关的能力,其质量子特性不包括(31)。
(31)A.全性性 B.成熟性 C.容错性 D.易恢复性
答案:A
解析:安全性属于功能性里面的,其余的跟其相关即可
- McCall 软件质量模型
没有回复内容