软件测试用例分析与设计.pptx

上传人:莉*** 文档编号:73623311 上传时间:2023-02-20 格式:PPTX 页数:61 大小:674.29KB
返回 下载 相关 举报
软件测试用例分析与设计.pptx_第1页
第1页 / 共61页
软件测试用例分析与设计.pptx_第2页
第2页 / 共61页
点击查看更多>>
资源描述

《软件测试用例分析与设计.pptx》由会员分享,可在线阅读,更多相关《软件测试用例分析与设计.pptx(61页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 在日常的测试用例设计过程中,存在的问题?讨论第1页/共61页如何以最少的人力、资源投入,在最短的时间内完成测试,发现软件系统的缺陷,保证软件的优良品质,则是软件公司探索和追求的目标。测试用例是测试工作的指导,是软件测试的必须遵守的准则,更是软件测试质量稳定的根本保障。测试用例概述第2页/共61页测试用例可以独立进行测试执行的最小单元。测试内容的一系列情景和每个情景中必须依靠输入和输出,而对软件的正确性进行判断的测试文档,称为测试用例。测试用例就是将软件测试的行为活动,做一个科学化的组织归纳。软件测试是有组织性、步骤性和计划性的,为了能将软件测试的行为转换为可管理的、具体量化的模式,需要创建和

2、维护测试用例。什么是测试用例第3页/共61页在开始实施测试之前设计好测试用例,避免盲目测试并提高测试效率,减少测试的不完全性;测试用例的使用令软件测试的实施重点突出、目的明确;根据测试用例的多少和执行难度,估算测试工作量,便于测试项目的时间和资源管理与跟踪;减少回归测试的复杂程度,在软件版本更新后只需修正少量的测试用例便可展开测试工作,降低工作强度、缩短项目周期;为什么需要测试用例第4页/共61页功能模块的测试用例的通用化和复用化则会使软件测试易于开展,并随着测试用例的不断细化其效率也不断攀升;根据测试用例的操作步骤和执行结果,为分析软件缺陷和程序模块质量提供依据;可以方便地书写软件测试缺陷报

3、告;可以根据测试用例的执行等级,实施不同级别的测试;便于大型软件测试项目外包测试指导基础;为什么需要测试用例第5页/共61页可以最大程度地找出软件隐藏的缺陷可以最高效率的找出软件缺陷可以最大程度地满足测试覆盖要求既不过分复杂、也不能过分简单使软件缺陷的表现可以清楚的判定 测试用例包含期望的正确的结果 待查的输出结果或文件必须尽量简单明了不包含重复的测试用例测试用例内容清晰、格式一致、分类组织测试用例的简明性,与易理解性,达到仅根据测试用例即可完成测试为目的良好测试用例的特征第6页/共61页可以设计多少个测试用例?问题第7页/共61页UCTC1、TC2TS判断测试的质量,取决于广度、深度,不取决

4、于频度。广度:功能需求的覆盖率;深度:单功能点的测试用例的数量。深度的级别:A:Main TC(基本流)A1:(备选流)B:additional TC(等价类、边界值)C:supply TC(错误推导法、因果图法)D:AD-HOC 随机测试,固定时长 测试用例深度的设计,取决于功能的优先级、重要度。小结第8页/共61页 conception FetureScenarioUCcode-TC -IT 功能的重要度分为4级:critical、major、minor、Dont care。分析需求规格说明书第9页/共61页标识功能点中待测的业务实体业务实体与测试的关系 数据库测试(数据实体图)读需求规格

5、来完成业务实体的标示需求规格中的业务实体完整性判断 数据实体:输入、输出分析需求规格说明书第10页/共61页标识功能点中待测的业务规则业务规则与测试的关系?业务规则分类标识狭义的业务规则与广义的业务规则 操作步骤、界面、规则、业务,主要完成细节TC逻辑设计分析需求规格说明书第11页/共61页标识功能点中待测的业务流业务流程中的动作与状态分析业务流程中动作按照时间列表读UML图中的活动图完成动作或活动的标示 完成流程用例的设计分析需求规格说明书第12页/共61页标识功能点中待测的业务状态业务状态与业务流程业务状态定义依据(未发生、发生中、已发生)业务状态的转换条件标识 完善流程、功能用例的设计,

6、业务状态测试分析需求规格说明书第13页/共61页标识功能点中待测的业务角色读需求规格说明书中的组织结构域业务角色角色对业务实体以及相关属性操作的行为角色之间的隶属关系读业务执行者的关系图 权限测试(用户与数据权限、用户与行为权限、用户与角色权限等)分析需求规格说明书第14页/共61页标识功能点中待测质量因素读需求规格说明书的非功能部分客户对软件系统质量的细节要求标出列表将与软件系统相关的质量属性标出列表对软件系统的质量属性进行优先级别的排序 非功能性测试(性能、可靠性、健壮),此部分测试基本都是通过自动化测试完成的(压力、疲劳、容量等)。分析需求规格说明书第15页/共61页标识功能点中待测环境

7、因素读需求规格说明书关于软件系统运维环境的描述部分标识软件系统运行的相关环境因素对相关的环境因素给出详细列表对易变动环境与稳定环境进行标识 生产环境对测试的影响分析需求规格说明书第16页/共61页正确理解需求的过程分析需求规格说明书第17页/共61页测试用例设计的视角第18页/共61页测试种类、阶段和用例的关系测试用例设计第19页/共61页1、软件版本编号。2、测试用例编号,编号的格式可根据软件版本号+用例号来确定。3、用例的优先级,在一个时间紧凑的测试环境下,为了按效率的完成测试用例。4、前提条件:参数、配置、数据准备。5、业务说明。4、用例步骤ID。5、输入数据。6、期望输出数据。某个步骤

8、下,输入了某条数据,你期望程序会输出什么数据,可以用来与实际输出的数据相比较。8、备注。为什么要备注,可能你在考虑这个Case的时候有一个好的点子或者思路,可写在备注里面。9、测试环境。10、用例编写人/日期。(不重要)11、测试执行者/日期。(不重要)可能根据不同的项目还需要一些补充,可以根据具体情况具体分析。注:在测试用例设计中,测试步骤、测试数据分离。注:在测试用例设计中,测试步骤、测试数据分离。测试用例的基本结构第20页/共61页5W1H Why为什么而测?目的目的 What测什么?内容、期望结果内容、期望结果 Where在哪里测?环境环境 When什么时候开始测?时间时间 Which

9、哪些输入数据?测试数据测试数据 How如何操作软件?步骤步骤测试用例要描述什么第21页/共61页测试用例的元素第22页/共61页 是由一组逻辑上相关联的操作构成的。有初始化操作,预计的输入,处理,输出。需要区分主业务流程和辅助业务流程 测试用例应该划分优先级,首先保证重点业务流程的正确性。测试用例决不是一个一个的孤岛,而是按照逻辑关系组合到一起,由数据构成的逻辑包。测试用例的组成第23页/共61页软件测试用例的设计测试用例概述测试用例设计方法测试用例的设计步骤第24页/共61页 黑盒测试是从一种从软件外部对软件实施的测试,也称功能测试或基于规格说明的测试。其基本观点是:任何程序都可以看作是从输

10、入定义域到输出值域的映射,这种观点将被测程序看作一个打不开的黑盒,黑盒里面的内容(实现)是完全不知道的,只知道软件要做什么。因无法看到盒子中的内容,所以不知道软件是如何实现的,也不关心黑盒里面的结构,只关心软件的输入数据和输出结果黑盒测试的基本概念第25页/共61页黑盒测试是从用户观点出发的测试,其目的是尽可能发现软件的外部行为错误。在已知软件产品功能的基础上:检测软件功能能否按照需求规格说明书的规定正常工作,是否有功能遗漏;检测是否有人机交互错误,是否有数据结构和外部数据库访问错误,是否能恰当地接收数据并保持外部信息(如数据库或文件)等的完整性;检测行为、性能等特性是否满足要求等;检测程序初

11、始化和终止方面的错误等。黑盒测试的基本概念第26页/共61页 黑盒测试着眼于软件的外部特征,通过上述方面的检测,确定软件所实现的功能是否按照软件规格说明书的预期要求正常工作。两个显著的优点:黑盒测试与软件具体实现无关,所以如果软件实现发生了变化,测试用例仍然可以使用;设计黑盒测试用例可以和软件实现同时进行,因此可以压缩项目总的开发时间。黑盒测试的基本概念第27页/共61页穷举输入测试是不现实的。这就需要我们认真研究测试方法,以便能开发出尽可能少的测试用例,发现尽可能多的软件故障。常用的黑盒测试方法有等价类划分、边界值分析、决策表测试等,每种方法各有所长,我们应针对软件开发项目的具体特点,选择合

12、适的测试方法,有效地解决软件开发中的测试问题。黑盒测试的基本概念第28页/共61页等价类划分 等价类划分法是一种典型的黑盒测试方法,它完全不考虑程序的内部结构,只根据程序规格说明书对输入范围进行划分,把所有可能的输入数据,即程序输入域划分为若干个互不相交的子集,称为等价类,然后从每个等价类中选取少数具有代表性的数据作为测试用例,进行测试。黑盒测试方法第29页/共61页等价类划分 所谓等价类是指输入域的某个互不相交的子集合,所有等价类的并便是整个输入域。1划分等价类(1)有效等价类 检验程序是否实现了规格说明预先规定的功能和性能。(2)无效等价类 检查软件功能和性能的实现是否有不符合规格说明要求

13、的地方。黑盒测试方法第30页/共61页等价类划分 2常用的等价类划分原则(1)按区间划分(2)按数值划分(3)按数值集合划分(4)按限制条件或规则划分(5)细分等价类黑盒测试方法第31页/共61页等价类划分3等价类划分测试用例设计在设计测试用例时应同时考虑有效等价类和无效等价类测试用例的设计。根据等价类表设计测试用例,具体步骤如下:(1)为每个等价类规定一个唯一的编号。(2)设计一个新的测试用例,尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到测试用例覆盖了所有的有效等价类。(3)设计一个新的测试用例,使其覆盖并且只覆盖一个还没有被覆盖的无效等价类。重复这一步,直至测试用例覆盖了所有的无

14、效等价类。黑盒测试方法第32页/共61页等价类划分-案例分析三角形问题的等价类测试输入三个整数a、b和c分别作为三角形的3条边,通过程序判断由这3条边构成的三角形类型是:等边三角形、等腰三角形、一般三角形或非三角形(不能构成一个三角形)输入3个整数a、b和c分别作为三角形的三条边,要求a、b和c必须满足以下条件:Con11a100Con21b100Con31c100Con4ab+cCon5ba+cCon6ca+b黑盒测试方法第33页/共61页等价类划分-案例分析三角形问题的等价类测试黑盒测试方法第34页/共61页等价类划分-案例分析三角形问题的等价类测试黑盒测试方法第35页/共61页边界值分析

15、法大量的软件测试实践表明,故障往往出现在定义域或值域的边界上,而不是在其内部。为检测边界附近的处理专门设计测试用例,通常都会取得很好的测试效果。因此边界值分析法是一种很实用的黑盒测试用例方法,它具有很强的发现故障的能力。设计方法:确定边界情况(输入或输出等价类的边界)选取正好等于、刚刚大于或刚刚小于边界值作为测试数据黑盒测试方法第36页/共61页边界值分析法-案例分析加法器程序计算两个1100之间整数的和。对于加法器程序,根据输入要求可将输入空间划分为三个等价类,即1个有效等价类(1100之间),两个无效等价类(100)。但这种等价类划分不是很完善,我们只考虑了输入数据的取值范围,而没有考虑输

16、入数据的类型,我们认为输入应为整数,但用户输入什么都有可能。黑盒测试方法第37页/共61页边界值分析法-案例分析为此,我们可综合考虑输入数据的取值范围和类型划分等价类,其结果如下表所示。黑盒测试方法第38页/共61页边界值分析法-案例分析为此,我们可综合考虑输入数据的取值范围和类型划分等价类,其结果如下表所示。黑盒测试方法第39页/共61页边界值分析法其实边界值和等价类密切相关,输入等价类和输出等价类的边界是要着重测试的边界情况。在等价类的划分过程中产生了许多等价类边界。边界是最容易出错的地方,所以,从等价类中选取测试数据时应该关注边界值。在等价类划分基础上进行边界值分析测试的基本思想是,选取

17、正好等于、刚刚大于或刚刚小于等价类边界的值作为测试数据,而不是选取等价类中的典型值或任意值做为测试数据。黑盒测试方法第40页/共61页错误推测法测试用例设计基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用例。发现程序经常出现的错误的方法:单元测试中发现的模块错误;产品的以前版本曾经发现的错误;输入数据为0或字符为空;当软件要求输入时(比如在文本框中),不是没有输入正确的信息,而是根本没有输入任何内容,单单按了Enter键;这种情况在产品说明书中常常忽视,程序员也可能经常遗忘,但是在实际使用中却时有发生。程序员总会习惯性的认为用户要么输入信息,不管是看起来合法的或非法的信

18、息,要不就会选择Cancel键放弃输入,黑盒测试方法第41页/共61页测试场景法设计测试用例现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,同时使测试用例更容易理解和执行。黑盒测试方法第42页/共61页测试场景法设计测试用例用例场景用来描述流经用例的路径,从用例开始到结束遍历这条路径上所有基本流和备选流。每个基本流都是一个完整的业务流程,或者用例。黑盒测试方法第43页/共61页测试场景法设计测试用例案例分析 以

19、以ATM取款为例,按照基本流、备选流的取款为例,按照基本流、备选流的概念,讨论哪些是基本流、备选流。概念,讨论哪些是基本流、备选流。黑盒测试方法第44页/共61页基本流开端是开端是 ATMATM处于准备就绪状态。处于准备就绪状态。1.1.准备提款准备提款-客户将银行卡插入客户将银行卡插入 ATMATM机的读卡机。机的读卡机。2.2.验证银行卡验证银行卡-ATM-ATM机从银行卡的磁条中读取帐户代码,并检查它是否机从银行卡的磁条中读取帐户代码,并检查它是否属于可以接收的银行卡。属于可以接收的银行卡。3.3.输入输入 PIN-ATMPIN-ATM要求客户输入要求客户输入 PINPIN码(码(44位

20、)位)4.4.验证帐户代码和验证帐户代码和 PIN-PIN-验证帐户代码和验证帐户代码和 PINPIN以确定该帐户是否有效以以确定该帐户是否有效以及所输入的及所输入的 PINPIN对该帐户来说是否正确。对于此事件流,帐户是有效对该帐户来说是否正确。对于此事件流,帐户是有效的而且的而且 PINPIN对此帐户来说正确无误。对此帐户来说正确无误。5.ATM5.ATM选项选项-ATM-ATM显示在本机上可用的各种选项。在此事件流中,银行显示在本机上可用的各种选项。在此事件流中,银行客户通常选择客户通常选择“提款提款”。6.6.输入金额输入金额-要从要从 ATMATM中提取的金额。对于此事件流,客户需选

21、择预设中提取的金额。对于此事件流,客户需选择预设的金额(的金额(1010美元、美元、2020美元、美元、5050美元或美元或 100100美元)。美元)。7.7.授权授权-ATM-ATM通过将卡通过将卡 IDID、PINPIN、金额以及帐户信息作为一笔交易发送、金额以及帐户信息作为一笔交易发送给银行系统来启动验证过程。对于此事件流,银行系统处于联机状态,给银行系统来启动验证过程。对于此事件流,银行系统处于联机状态,而且对授权请求给予答复,批准完成提款过程,并且据此更新帐户余而且对授权请求给予答复,批准完成提款过程,并且据此更新帐户余额。额。8.8.出钞出钞-提供现金。提供现金。9.9.返回银行

22、卡返回银行卡-银行卡被返还。银行卡被返还。10.10.收据收据-打印收据并提供给客户。打印收据并提供给客户。ATMATM还相应地更新内部记录。还相应地更新内部记录。用例结束时用例结束时 ATMATM又回到准备就绪状态。又回到准备就绪状态。黑盒测试方法第45页/共61页黑盒测试方法银行卡无效在基本流步骤 2 2 中 -验证银行卡,如果卡是无效的,则卡被退回,同时会通知相关消息。ATM ATM 内没有现金在基本流步骤 5 5 中 -ATM-ATM 选项,如果 ATM ATM 内没有现金,则“提款”选项将无法使用。ATM ATM 内现金不足在基本流步骤 6 6 中-输入金额,如果 ATM ATM 机

23、内金额少于请求提取的金额,则将显示一则适当的消息,并且在步骤 6-6-输入金额处重新加入基本流。PIN PIN 有误在基本流步骤 4 4 中-验证帐户和 PINPIN,客户有三次机会输入 PINPIN。如果 PIN PIN 输入有误,ATM ATM 将显示适当的消息;如果还存在输入机会,则此事件流在步骤 3-3-输入 PIN PIN 处重新加入基本流。如果最后一次尝试输入的 PIN PIN 码仍然错误,则该卡将被 ATM ATM 机保留,同时 ATM ATM 返回到准备就绪状态,本用例终止。帐户不存在在基本流步骤 4 4 中 -验证帐户和 PINPIN,如果银行系统返回的代码表明找不到该帐户或

24、禁止从该帐户中提款,则 ATM ATM 显示适当的消息并且在步骤 9-9-返回银行卡处重新加入基本流。帐面金额不足在基本流步骤 7-7-授权中,银行系统返回代码表明帐户余额少于在基本流步骤 6-6-输入金额内输入的金额,则 ATM ATM 显示适当的消息并且在步骤 6-6-输入金额处重新加入基本流。达到每日最大的提款金额在基本流步骤 7-7-授权中,银行系统返回的代码表明包括本提款请求在内,客户已经或将超过在 24 24 小时内允许提取的最多金额,则 ATM ATM 显示适当的消息并在步骤 6-6-输入金额上重新加入基本流。记录错误如果在基本流步骤 10-10-收据中,记录无法更新,则 ATM

25、 ATM 进入“安全模式”,在此模式下所有功能都将暂停使用。同时向银行系统发送一条适当的警报信息表明 ATM ATM 已经暂停工作。退出客户可随时决定终止交易(退出)。交易终止,银行卡随之退出。“翘起”ATM ATM 包含大量的传感器,用以监控各种功能,如电源检测器、不同的门和出入口处的测压器以及动作检测器等。在任一时刻,如果某个传感器被激活,则警报信号将发送给警方而且 ATM ATM 进入“安全模式”,在此模式下所有功能都暂停使用,直到采取适当的重启/重新初始化的措施。第46页/共61页测试场景法设计测试用例案例分析用例设计用例设计黑盒测试方法第47页/共61页测试场景法设计测试用例案例分析

26、数据设计:数据设计:一旦一旦确定了所有的测试用例,则应对这些用例进行复审和验一旦一旦确定了所有的测试用例,则应对这些用例进行复审和验证以确保其准确且适度,并取消多余或等效的测试用例。证以确保其准确且适度,并取消多余或等效的测试用例。黑盒测试方法第48页/共61页因果图法等价类划分方法和边界值分析法都是着重考虑输入条件,也没有考虑到输入情况的各种组合,也没考虑到各个输入情况之间的相互制约关系。因果图方法的思路是:仅用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表。黑盒测试方法第49页/共61页因果图法测试用例设计p设计方法:p分析程序规格

27、说明的描述中,哪些是原因,哪些是结果。原因常常是输入条件戒是输入条件的等价类,而结果是输出条件;p找出原因与结果,原因与原因之间的对应关系,划出因果图;p在因果图上标上哪些不可能发生的因果关系,表明约束或限制条件;p根据因果图,创建判定表,将复杂的逻辑关系和多种条件组合很具体明确的表示出来;p把判定表的每一行作为依据设计测试用例。黑盒测试方法第50页/共61页因果图法测试用例设计p因果图中用到的基本符号黑盒测试方法第51页/共61页因果图法测试用例设计p因果图中用到的条件之间关系的符号黑盒测试方法第52页/共61页因果图法测试用例设计案例分析有一个处理单价为1元2元的盒装饮料的自动售货机软件。

28、若投入1元硬币,按下“可乐”、“雪碧”和“红茶”按钮,相应的饮料就送出来。若投入的是两元硬币,在送出饮料的同时退还1元硬币。黑盒测试方法第53页/共61页因果图法测试用例设计案例分析黑盒测试方法第54页/共61页决策表法决策表是把作为条件的所有输入的各种组合值以及对应输出值都罗列出来而形成的表格。它能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用决策表能够设计出完整的测试用例集合。黑盒测试方法第55页/共61页决策表法黑盒测试方法第56页/共61页p白盒测试用例的设计方法u 逻辑覆盖:以程序的内部逻辑结构为基础,分为语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组

29、合覆盖等;u基本路径测试:在程序控制流程的基础上,分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例。白盒测试方法第57页/共61页软件测试用例的设计测试用例概述测试用例设计方法测试用例的设计步骤第58页/共61页p在测试时,不可能进行穷举测试,为了节省时间和资源,提高测试效率,必须要从数量极大的可用测试数据中精心挑选出具有代表性或特殊性的测试数据来进行测试。p测试用例编写有三种主要格式:StepbyStep(按步骤):最基本的格式Matrix(矩阵表):用例设计分析AutomatedScript(自动化脚本)测试用例设计步骤第59页/共61页以功能测试用例的设计为依据来说明测

30、试用例的设步骤:1、TP设计,定义测试范围(Feature),制定测试执行的质量标准;2、分析需求,Feature重要度分析,TC设计深度(ABCD);3、场景法:(1)HappyDay场景、异常事件流,设计操作步骤与期望结果;(2)测试用例数据设计;HappyDayA类测试用例数据,每一个异常流都是A1类的测试用例数据;4、使用等价类划分:分析需求输入数据,划分等价类,B类测试用例;输入数据覆盖尽可能多的有效等价类,一个无效等价类一个用例;5、使用边界值,分析需求输入数据边界,每个边界3个测试用例验证,B类测试用例;6、合并A、B两类测试用例,用尽可能少的测试用例完成测试。一般A类用于回归测试,自动化测试实现;A、B类测试用例保障系统的基本健壮性,正确性。测试用例设计步骤第60页/共61页感谢您的观看!第61页/共61页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁