一、判断题
1.软件测试和软件调试是同一回事。(×)
2.软件测试是可以无穷尽的。(×)
3.测试是为了证明软件的正确性。(×)
4.测试过程中应重视测试的执行,可以轻视测试的设计。(×)
5.测试不能修复所有的软件故障。(√)
6.因为测试工作简单,对软件产品影响不大,所以可以把测试作为新员工的一个过渡工作,或安排不合格的开发人员做测试。(×)
二、简答题
1.根据软件测试的背景,简要说明为什么要进行软件测试。
随着软件产业的日益发展,软件系统的规模和复杂性与日俱增,软件的生产成本和软件中存在的缺陷故障造成的损失也大大增加,甚至会带来灾难性的后果。软件测试的目的是尽可能多地发现程序中的错误。
2.我国软件测试的现状是怎样的?
(1)软件测试重要性和规范性不断提高;
(2)测试从手工向自动化方式转变 ;
(3)测试人员需求逐步增大,素质不断提高 ;
(4)测试服务体系初步形成 。
3.软件测试和软件开发是什么关系?
(1)软件测试与软件开发各阶段的关系
软件开发过程是一个自顶向下、逐步细化的过程,首先在软件计划阶段定义了软件的作用域,然后进行软件需求分析,建立软件的数据域、功能和性能需求、约束和一些有效性准则。接着进入软件开发,首先是软件设计,然后再把设计用某种程序设计语言转换成程序代码。而测试过程则是依相反的顺序安排自底向上、逐步集成的过程,低一级测试为上一级测试准备条件。此外还有两者平行地进行测试。首先对每一个程序模块进行单元测试,消除程序模块内部在逻辑上和功能上的错误和缺陷。再对照软件设计进行集成测试,检测和排除子系统(或系统)结构上的错误。随后再对照需求,进行确认测试。最后从系统全体出发,运行系统,看是否满足要求。
(2)软件测试与软件开发的并行性
在软件的需求得到确认并通过评审后,概要设计工作和测试计划制订工作就要并行进行。如果系统模块已经建立,对各个模块的详细设计、编码、单元测试等工作又可并行进行。待每个模块完成后,可以进行集成测试、系统测试。
4.阐述软件质量与软件测试的关系
“软件测试”属于软件质量控制活动;
软件测试是获取软件质量度量的重要手段;
软件质量保证是为满足顾客要求提供信任的证据,即让顾客确信你提供的产品能满足他的要求。
5.软件测试管理包含哪些方面?各部分的主要内容是什么?
(1)测试计划的管理;
测试计划的管理内容主要有:测试评估,确定切实可行的测试目标,制订合理的测试计划,控制测试计划的执行。
(2)测试件管理;
主要内容是:检查和评审测试工作产品,测试和分析测试对象——软件产品,收集质量分析和产品放行决策所需要的数据,测试配置管理。
(3)测试过程的管理;
主要内容有:定义和定制所需要的测试过程,满足测试过程所需要的资源和条件,实施确定的测试过程,测量和分析测试过程的有效性和效率,进行基于度量的测试过程的持续改进。
(4)测试人员及组织的管理。
主要工作有:选择合适的测试人员,使测试人员能够按测试计划完成测试任务,与有关人员进行沟通、协同工作,建立有效的软件测试团队。
6.一位优秀的软件测试人员需具备哪些素质?
(1)沟通能力:人际交往与沟通能力
(2)移情能力:端正心态,在工作中对事不对人
(3)技术能力:包括与软件测试相关的知识和技能
(4)自信心:接受指正,坚持观点
(5)外交能力: 为人处世要有技巧
(6)幽默感
(7)很强的记忆力:可以挖掘记忆深处的东西
(8)耐心: 不厌其烦,保持工作热情
(9)怀疑精神:未检测前,不要轻信任何解释和承诺
(10)自我督促:不断学习的能力
(11)洞察力:有较强的分析能力,善于从复杂的环境中发现事物的本质,找到关键因素