《软件测试指南》原件获取方式:评论区留言。进小编老师主页获取更多实用材料原件。
1. 引言
1.1 目的
软件测试是保证软件产品质量的重要手段之一。它是测量、评估软件产品特点和能力的活动。现在,国内一些软件企业对于软件测试的重视程度还很不够,认为测试工作非常简单,只是简单地操作所测的软件产品而已。这种错误的思想严重影响了国内软件质量。
本文档的目的是为软件测试人员、设计员提供软件测试工作的规范。
1.2 适用范围
文档适用于使用软件项目。
1.3 名词术语
集成测试(Integration Testing)
集成测试是确保各单元组合在一起后能够按既定意图协作运行,并确保增量的行为正确。它所测试的内容包括单元间的接口以及集成后的功能。
系统测试(System Testing)
系统测试是通过与系统的需求定义作比较, 发现软件与系统需求定义不相符合或与之矛盾的地方。它将通过确认测试的软件,作为整个基于计算机系统的一个元素, 与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合起来, 在实际运行(使用)环境下,对计算机系统所进行的一系列集成测试和确认测试。
2. 软件集成测试
2.1 简介
集成测试的目的是确保各单元组合在一起后能够按既定意图协作运行,并确保增量的行为正确。它所测试的内容包括单元间的接口以及集成后的功能。使用黑盒测试和白盒测试想结合的方法测试集成的功能。并且对以前的集成进行回归测试。
2.3 集成测试需求获取
求主要来源于设计模型(Design Model)和集成构件计划(Integration Build Plan )。集成测试着重于集成版本的外部接口的行为。因此,测试需求须具有可观测、可测评性。
1.集成工作版本应分析其类协作与消息序列,从而找出该工作版本的外部接口。
2.由集成工作版本的外部接口确定集成测试用例。
3.测试用例应覆盖工作版本每一外部接口的所有消息流序列。
注意:一个外部接口和测试用例的关系是多对多,部分集成工作版本的测试需求可映射到系统测试需求,因此对这些集成测试用例可采用重用系统测试用例技术。
2.5 集成测试产生的工作产品清单
1、软件集成测试计划;
2、集成测试用例;
3、集成测试报告。
3. 软件系统测试
3.1 简介
系统测试是通过与系统的需求规格作比较,发现软件与系统需求规格不相符合或与之矛盾的地方。它将通过确认测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合起来,在实际运行(使用)环境下,对计算机系统进行的测试。
3.3 系统测试需求获取
系统测试需求所确定的是测试的内容,即测试的具体对象。系统测试需求主要来源于需求工作产品集,它可能是一个需求规格说明书,或是由前景、用例、用例模型、词汇表、补充规约组成的一个集合。
在分析测试需求时,可应用以下几条一般规则:
n 测试需求必须是可观测、可测评的行为。如果不能观测或测评的测试需求,就无法对其进行评估,以确定需求是否已经满足。
n 在每个用例或系统的补充需求与测试需求之间不存在一对一的关系。用例通常具有多个测试需求;有些补充需求将派生一个或多个测试需求,而其他补充需求(如市场需求或包装需求)将不派生任何测试需求。
n 在需求规格说明书中每一个功能描述将派生一个或多个测试需求,性能描述、安全性描述等也将派生出一个或多个测试需求。
3.3.1 功能性测试需求
功能性测试需求来自于测试对象的功能性说明。每个用例至少会派生一个测试需求。对于每个用例事件流,测试需求的详细列表至少会包括一个测试需求。对于需求规格说明书中的功能描述,将至少派生一个测试需求。
3.3.2 性能测试需求
性能测试需求来自于测试对象的指定性能行为。性能通常被描述为对响应时间和资源使用率的某种评测。性能需要在各种条件下进行评测,这些条件包括:
不同的工作量和/或系统条件
不同的用例/功能
不同的配置
性能需求在补充规格或需求规格说明书中的性能描述部分中说明。对包括以下内容的语句要特别注意:
时间语句,如响应时间或定时情况;指出在规定时间内必须出现的事件数或用例数的语句;将某一项性能的行为与另一项性能的行为进行比较的语句;将某一配置下的应用程序行为与另一配置下的应用程序行为进行比较的语句;一段时间内的操作可靠性(平均故障时间或 MTTF);配置或约束。
应该为规格中反映以上信息的每个语句生成至少一个测试需求。
3.3.3 其它测试需求
其它测试需求包括安全性测试、兼容性测试等测试需求可以从非功能性需求中发现与其对应的描述。每一个描述信息可以生成至少一个测试需求。
4. 系统测试策略
测试策略用于说明某项特定测试工作的一般方法和目标。系统测试策略主要针对系统测试需求确定测试类型及如何实施测试的方法和技术。
一个好的测试策略应该包括下列内容:
要实施的测试类型和测试的目标
采用的技术
用于评估测试结果和测试是否完成的标准
对测试策略所述的测试工作存在影响的特殊事项
4.1 系统测试类型和目标
确定系统测试策略首先应清楚地说明所实施系统测试的类型和测试的目标。清楚地说明这些信息有助于尽量避免混淆和误解。测试目标应该表明执行测试的原因。
系统测试的测试类型一般包括:
功能测试(Functional Testing)
性能测试(Performance Testing)
安全性测试(Security Testing)
安装测试(Installation Testing)
用户界面测试(GUI Testing)
兼容性测试(Compatibility Testing)
其中,功能测试、界面测试、安装测试等在一般情况下是必需的。而其它的测试类型则需要根据软件项目的具体要求进行裁剪。
4.2 采用的测试技术
系统测试主要采用黑盒测试技术设计测试用例来确认软件满足需求规格说明书的要求。