当前位置:文档之家› 软件测试7

软件测试7

软件测试7
软件测试7

信息学院上机实验报告

注:每学期至少有一次设计性实验。每学期结束请任课教师按时按量统一交到教学秘书处。

第7章 软件测试

第7章例题分析与解答 https://www.doczj.com/doc/049816635.html,作者:不详来源:2006年9月1日发表评论进入社区 一、填空题 1.被测试程序不在机器上运行,而是采用人工检测和计算机辅助分析检测的手段称为______测试。 2.用等价类划分法设计一个测试用例时,使其覆盖______尚未被覆盖的合理等价类。 3.用等价类划分法设计一个测试用例时,使其覆盖______不合理等价类。 4.在单元测试时,需要为被测模块设计______。 5.在集成测试时有两种测试方法,它们是______。 二、选择题 1.软件测试的目的是( )。 A.试验性运行软件 B.发现软件错误 C.证明软件正确 D.找出软件中全部错误 2.软件测试中,白盒法是通过分析程序的( )来设计测试用例的。 A.应用范围 B.内部逻辑 C.功能 D.输入数据 3.黑盒法是根据程序的( )来设计测试用例的。 A.应用范围 B.内部逻辑 C.功能 D.输入数据 4.为了提高软件测试的效率,应该( )。 A.随机地选取测试数据 B.取一切可能的输入数据作为测试数据

C.在完成编码以后制定软件的测试计划 D.选择发现错误可能性较大的数据作为测试用例 5.与设计测试用例无关的文档是( )。 A.项目开发计划 B.需求规格说明书 C.设计说明书 D.源程序 三、应用题 某程序的功能是输入代表三角形三条边长的三个整数,判断它们能否组成三角形,若能则输出等边、等腰或任意三角形的类型标记。请分别用黑盒法与白盒法对该程序设计测试用例。 答案: 一、填空题 1.静态 2.尽可能多的 3.一个 4.驱动模块与桩模块 5.渐增式和非渐增式 二、选择题 1.B 2.B 3.C 4.D 5.A

软件工程考核知识点-第7章-软件测试

软件工程考核知识点-第7章-软件测试 7.1 软件测试的目的及原则 7.1.1 软件测试的目的 (1)软件测试是为了发现错误而执行程序的过程。 (2)一个好的测试用例能够发现至今尚未发现的错误。 (3)一个成功的测试是发现了至今尚未发现的错误的测试。 因此,测试阶段的基本任务应该是根据软件开发各阶段的文档资料和程序的内部结构,精心设计一组“高产”的测试用例,利用这些实例执行程序,找出软件中潜在的各种错误和缺陷。 7.1.2软件测试的原则 在软件测试中,应注意以下原则: (1)测试用例应由输入数据和预期的输出数据两部分组成。这样便于对照检查,做到"有的放矢"。 (2)测试用例不仅选用合理的输入数据,还要选择不合理的输入数据。这样能更多地发现错误,提高程序地可靠性。对于不合理地输入数据,程序应拒绝接受,并给出相应提示。 (3)除了检查程序是否做了它应该做的事,还应该检查程序是否做了它不应该做的事。例如程序正确打印出用户所需信息的同时还打印出用户并不需要的多余的信息。 (4)应制定测试计划并严格执行,排除随意性。 (5)长期保留测试用例。测试用例的设计耗费很大的工作量,必须作为文档保存。因为修改后的程序可能有新的错误,需要进行回归测试。同时,为以后的维护提供方便。 (6)对发现错误较多的程序段,应进行更深入的测试。有统计数字表明,一段程序中所发现的错误数越多,其中存在的错误概率也越大。因为发现错误数多的程序段,其质量较差。同时在修改错误过程中又容易引入新的错误。 (7)程序员避免测试自己的程序。测试是一种"挑剔性"的行为,心理状态是测试自己程序的障碍。另外,对需求规格说明的理解而引入的错误则更难发现。因此应由别的人或另外的机构来测试程序员编写的程序会更客观,更有效。 7.2 测试方法 软件测试方法一般分为两大类:动态测试方法与静态测试方法,而动态测试方法中又根据测试用例的设计方法不同,分为黑盒测试与白盒测试两类。 7.2.1 静态测试与动态测试 1. 静态测试 静态测试是指被测试程序不在机器上运行,而是采用人工检测和计算机辅助静态分析的手段对程序进行检测。 (1)人工检测。人工检测是不依靠计算机而是靠人工审查程序或评审软件。(2)计算机辅助静态分析。利用静态分析工具对被测试程序进行特性分析,从程序中提取一些信息,以便检查程序逻辑的各种缺陷和可疑的程序构造。 2. 动态测试 一般意义上的测试大多是指动态测试。有两种方法,分别是黑盒测试法和白盒测试法。 7.2.2 黑盒测试法与白盒测试法 1. 黑盒法

第七章 软件测试

第七章软件测试 编码完成之后,就是对源程序进行测试。软件测试是一项“劳民伤财”的工作,统计表明,开发大规模的软件,有40%以上的精力是耗费在软件测试上(40-20-40规则,Myers认为软件测试占大约50%的项目时间和超过50%总成本)。为了保证软件的正确可靠、为了防患于未然,无论怎样强调软件测试的重要性,都不过分。 关于软件测试,曾有种种似是而非的说法,众多的术语和测试技术,也常使我们眼花缭乱。在这里我试尝给大家勾画出一个清晰的逻辑轮廓。 7.1 基本概念 7.1.1 软件测试的目的(与地位) 说测试不能不提到G.J.Myers的经典著作《软件测试技巧》,他在书中说道:“测试是为了发现错误而执行程序的过程。” E.W.Dijkstra则说:“程序测试能证明错误的存在,但不能证明错误不存在。” 在这里,他们明确指出:测试的目的是发现程序中的错误,是为了证明程序有错,而不是证明程序无错。(其实你也证明不了)

在软件开发过程中,分析、设计、编码等工作都是建设性的,唯独测试带有“破坏性”,因为它抱着“吹毛求疵”的目的,明确宣布要在程序中“找岔子”。他们认为这种吹毛求疵的态度是至关重要的(态度决定一切!)。如果你是为了证明程序无错而去进行测试,错误就可能在你的眼皮底下漏过,反之,只要你抱着证明程序有错的目的去测试,就会尽心尽力去找程序中的错误。 根据Myers的说法,测试又是一个“(在计算机上)执行程序的过程”。分析和设计阶段都要对文档进行技术审查和管理复审,源程序完成后,也要进行代码复审(code review)。这些审查对减少软件错误有重要作用,但都不能代替在计算机上进行的测试,R.S.Pressman认为,测试可视为分析、设计、编码3个阶段的“最终复审(ultimate review)”,可见测试在软件质量保证中的重要地位。 现在我们干脆把Myers的:“程序测试是为了发现错误而执行程序的过程。”作为软件测试的定义。 另一个与测试密切相关的活动叫纠错(debugging),我们也常常说起“纠错和调试”。 [纠错和调试]测试的目的是发现错误,纠错则是为了确定错误的性质,并且加以纠正。因此,软件测试其实是这样一个过程:

第七章 系统实施与评价

第七章系统实施与评价 一、单选题 1.系统实施阶段容易出现的问题是() A.计算机设备出现故障 B.计算机软件存在漏洞 C.系统转换缺乏安全管理 D.系统维护计划不够完善 2.在信息系统文档中,需求变更申请书属于() A.用户文档 B.开发文档 C.管理文档 D.临时文档 3.系统测试的目的是() A.证明程序正确 B.取得正确结果 C.发现程序问题 D.临时文档 4.在测试时要求对程序中所有独立的路径都要执行一次,这种测试属于() A.单元测试 B.功能测试 C.结构测试 D.集成测试 5.软件能力成熟度模型(CMM)共分() A. 2级 B.3级 C. 4级 D. 5级 6.在系统实施阶段,用户培训的重点对象是() A.系统开发人员 B.业务管理人员 C.系统操作人员 D.系统维护人员 7.在系统维护工作中,产生“水波效应”的主要原因是() A.计算机硬件系统发生故障 B.系统软件出现错误 C.系统修改工作的随意性 D.数据库结构出现错误 8.将信息系统的所有组成部分综合在一起的测试,称为() A.接口测试 B.系统测试 C.组装测试 D.验收测试 9.为保证单元接口完整性和一致性的测试属于() A.单元测试 B.功能测试 C.结构测试 D.集成测试 10.下列属于系统实施阶段工作的是() A.编写物理配置报告 B.数据库设计 C.程序设计与调试 D.物理结构设计 11.在信息系统文档中,可行性研究报告属于() A.用户文档 B.开发文档 C.管理文档 D.临时文档 12.信息系统培训的重点对象是() A.系统开发人员 B.事务管理人员 C.系统操作人员 D.系统维护人员 13.在信息系统文档中,运行日志属于() A.用户文档 B.开发文档 C.管理文档 D.临时文档 14.在系统评价中,开发方最关注的评价指标是() A.项目的开发和运行成本 B.技术与质量指标 C.系统功能和运行质量 D.直接和间接经济效益 15.软件测试用例不全面的问题属于() A.系统分析阶段的问题 B.系统设计阶段的问题 C.系统实施阶段的问题 D.系统维护阶段的问题 16.不属于信息系统培训对象的人员是() A.系统开发人员 B.业务管理人员 C.系统操作人员 D.系统维护人员 17.将信息系统的所有组成部分集中在一起进行测试,属于() A.综合测试 B.系统测试 C.模块测试 D.验收测试 18.系统实施阶段容易出现的问题是() A.计算机设备出现故障 B.计算机软件存在漏洞 C.管理业务发生变化 D.缺乏审核 19.当新旧系统差别比较大时,应采用的转换方法是() A.直接转换 B.间接转换 C.并行转换 D.分段转换

第七章 软件测试习题.doc.deflate

第七章软件测试习题 1.什么是黑盒测试?黑盒测试主要采用的技术有哪些? 黑盒测试也称为功能测试,它着眼于程序的外部特征,而不考虑程序的内部逻辑结构。测试者把被测程序看成一个黑盒,不用关心程序的内部结构。黑盒测试是在程序接口处进行测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。 黑盒测试主要采用的技术有:等价分类法、边沿值分析法、错误推测法和因果图等技术。 2.什么是白盒测试?白盒测试主要采用的技术有哪些? 测试者了解被测程序的内部结构和处理过程,对程序的所有逻辑路径进行测试,在不同点检查程序状态,确定实际状态与预期状态是否一致。 白盒测试主要采用的技术有:路径测试技术和事务处理流程技术,对包含有大量逻辑判断或条件组合的程序采用基于逻辑的测试技术。 3.路径测试技术中几种主要覆盖的含义?举例说明? 语句覆盖:至少执行程序中所有语句一次。 判定覆盖:使被测程序中的每一个分支至少执行一次。也称分支覆盖,只关心整个判定表达式的结果。 条件覆盖:使判定表达式中的每个条件都取不同的值。 条件组合测试:设计足够的测试用例,使每个判定中的所有可能条件取值组合至少执行一次。 (例略) 4.等价分类法的测试技术采用的一般方法?举例说明? (1)为每个等价类编号; (2)设计一个新的测试方案,以尽可能多的覆盖尚未被覆盖的有效等价类,重复这一步骤, 直到所有有效等价类被覆盖为止。 (3)设计一个新的测试方案,使它覆盖一个尚未被覆盖的无效等价类, 重复这一步骤,直 到所有无效等价类被覆盖为止。 (例略) 5.软件测试的一般步骤? 单元测试、子系统测试、系统测试、验收测试、平行测试。

《软件工程学》第7章 软件测试-习题

7.1 软件测试目标 1.软件测试的目的是。 2.系统测试是把软件、硬件和环境连在一起的全面测试。() 3.完成测试作业后,为了缩短源程序的长度应删去源程序中的注释。() 4.如果测试过程没有发现任何错误,则说明软件没有错误。() 7.2 软件测试准则 1.简要说明软件测试的准则。 7.3 软件测试方法 1.软件测试中,白盒法是通过分析程序的()来设计测试用例的。 A.应用范围B.内部逻辑C.功能D.输入数据 2.以下测试方法中,不属子白盒测试技术的是()。 A.逻辑覆盖B.基本路径测试C.等价类划分D.循环覆盖测试3.使用黑盒测试时,测试用例应根据()。 A.程序的内部逻辑B.程序的复杂程度C.使用说明书D.程序的功能4.系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等测试。() 7.4 软件测试过程 1.单元测试的测试对象是()。 A.系统B.模块C.模块接口D.系统功能 2.确认测试主要涉及的文档是()。 A.需求规格说明书B.概要设计说明书C.源程序D.详细设计说明书3.验收的依据是需求说明书。() 7.5 测试用例的设计 1.黑盒测试:等价类划分,边界值法 某教务管理信息系统中要求用户输入成绩。成绩限制为0到100之间的整数,即系统只能对该范围内的成绩进行处理。如果用户输入的成绩不在此范围内,则显示“输入错误”。输入的成绩小于60则显示“不及格”,大于等于60显示“及格”。(该系统规定成绩只能为整数,输入小数或其它字符无效。)试用等价类划分法和边界值分析法设计测试用例,来测试程序的“输入成绩”功能。 2.白盒测试:设计下列伪码程序的判定覆盖和条件组合覆盖测试用例:

相关主题
文本预览
相关文档 最新文档