书签 分享 收藏 举报 版权申诉 / 148
上传文档赚钱

类型软件测试的原则课件.ppt

  • 上传人(卖家):ziliao2023
  • 文档编号:5672589
  • 上传时间:2023-05-01
  • 格式:PPT
  • 页数:148
  • 大小:2.39MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《软件测试的原则课件.ppt》由用户(ziliao2023)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    软件 测试 原则 课件
    资源描述:

    1、1第第6讲讲 软件测试软件测试2内容内容3防不胜防的软件错误防不胜防的软件错误 例例1:1963年年,美国美国,飞往火星的火箭爆炸飞往火星的火箭爆炸,损失损失$10 million.原因原因:FORTRAN循环循环 DO 5 I=1,3 误写为误写为 DO 5 I=1.3例例2:1996年,美国年,美国 Washington Post 报导报导Dallas,Aug.23 The captain of an American Airlines jet that crashed in Colombia last December entered an incorrect one-letter co

    2、mputer command that sent the plane into a mountain,the airline said today.4The crash killed all but four of the 163 people aboard.Americans investigators concluded that the captain of the Boeing 757 apparently thought he had entered the coordinates for the intended destination,Cali.But on most South

    3、 American aeronautical charts,the one-letter code for Cali is the same as the one for Bogota,132 miles in the opposite direction.The coordinates for Bogota directed the plane toward the mountain,according to a letter by Cecil Ewell,Americans chief pilot and vice president for flight.The codes for Bo

    4、gota and Cali are different in most computer databases,Ewell said.5 软件测试是保证软件质量的关软件测试是保证软件质量的关键步骤,是对软件规格说明、设计键步骤,是对软件规格说明、设计和编码的最后复审,其工件量约占和编码的最后复审,其工件量约占总工作量总工作量40%以上(对于人命关天以上(对于人命关天的情况,测试相当于其它部分总成的情况,测试相当于其它部分总成本的本的3 5倍倍)。)。67n基于不同的立场,存在着两种完全不同的测试目的。n从出发,普遍希望通过软件测试,以考虑是否可接受该产品。n从出发,则希望测试成为的过程,验证该软

    5、件已正确地实现了用户的要求,确立人们对软件质量的信心。8910。115.充分注意测试中的群集现象。经验表明,测试后。6.严格执行测试计划,。7.应当对每一个测试结果做全面检查。8.妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。12n软件测试并不等于程序测试。、等各阶段所得到的,包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,。13n为把握软件开发各个环节的正确性,需要进行各种和工作。(Validation),是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。u 需求规格说明的确认u 程序的确认(静态确认、动态确认)(Verifica

    6、tion),试图证明在软件生存期各个阶段,以及阶段间的逻辑协调性、完备性和正确性。141516:软件需求规格说明、软件设计规格说明、源代码等;:测试计划、测试用例、测试程序等;:测试数据自动生成程序、静态分析程序、动态分析程序、测试结果分析程序、以及驱动测试的测试数据库等等。17:比较实测结果与预期结果,评价错误是否发生。():对已经发现的错误进行错误定位和确定出错性质,并改正这些错误,同时修改相关的文档。:直到通过测试为止。18n通过收集和分析测试结果数据,对软件建立可靠性模型n利用可靠性分析,评价软件质量:u u n如果测试发现不了错误,可以肯定,测试配置考虑得不够细致充分,错误仍然潜伏在

    7、软件中。19n软件开发过程是一个自顶向下,逐步细化的过程n软件计划阶段定义软件作用域n软件需求分析建立软件信息域、功能和性能需求、约束等n软件设计n把设计用某种程序设计语言转换成程序代码20n测试过程是依相反顺序安排的自底向上,逐步集成的过程。2122n这种方法是把看做,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。n黑盒测试又叫做或。23n黑盒测试方法是在程序接口上进行测试,主要是为了发现以下错误:u?u 在接口上,?u(例如数据文件)?u?u?24n用黑盒测试发现程序中的错误,必须在中确定测试数据,来检查程序是否都能产生正确

    8、的输出。n但这是的。25n假设一个程序P有输入量X和Y及输出量Z。在字长为32位的计算机上运行。若X、Y取整数,按黑盒方法进行穷举测试:n可能采用的 测试数据组:232232 264 n如果测试一 组数据需要1毫秒,一年工作365 24小时,完成所有测试需5亿年。26n此方法,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。n通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。27n软件人员使用白盒测试方法,主要想对程序模块进行如下的检查:u 对程序模块的至少测试一次;u 对,;u 在循环的边

    9、界和运行界限内执行循环体;u 测试,等。28n对一个具有的程序,。给出一个小程序的流程图,它包括了一个执行20次的循环。n包含的不同执行路径数达520条,对每一条路径进行测试需要1毫秒,假定一年工作365 24小时,要想把所有路径测试完,需3170年。2930u u u u u u。逻辑覆盖是以的设计测试用例的技术。它属白盒测试。3132L1(ace)A B A XA1021andandorA B A A B X A102101andandorandandA B A B X A20101andorandand33L2(abd)=A B A X1021andandorA B A X1021ora

    10、ndand=A A X B A X121021andandorandandA X B A X11021a n do ra n da n d34L3(abc)A B A X1021a n da n do r A B A X1021o ra n do r A1 and X1 o r B0 and A2 o r B0 and X1 A X B A B X110201a n do ra n do ra n d 35L4(acd)A B A X A1021andandorA B A X A1021andandand36n语句覆盖就是设计若干个测试用例,运行被测程序,使得。n在图例中,正好所有的可执行语句

    11、都在上,所以选择设计测试用例,就可以覆盖所有的可执行语句。37n测试用例的设计格式如下【输入的(A,B,X),输出的(A,B,X)】n为图例设计满足的测试用例是:【(2,0,4),(2,0,3)】覆盖 ace【L1】A B A B X A20101andorandand38 n判定覆盖就是设计若干个测试用例,运行被测程序,使得。n判定覆盖又称为。n对于图例,如果选择和,就可得满足要求的测试用例:39n【(2,0,4),(2,0,3)】覆盖 ace【L1】【(1,1,1),(1,1,1)】覆盖 abd【L2】A X B A X11021andorandandA B A B X A20101and

    12、orandand40n如果选择路径L3和L4,还可得另一组可用的测试用例:【(2,1,1),(2,1,2)】覆盖 abe【L3】【(3,0,3),(3,1,1)】覆盖 acd【L4】1X 0B 2A 0B 1X 1Aandorandorand1AX 2A 0B 1Aandandand41n条件覆盖就是设计若干个测试用例,运行被测程序,使得程序中。n在图例中,我们事先可对所有条件的取值加以标记。例如,n对于第一个判断:u 条件 A1 取真为 ,取假为 条件 B0 取真为 ,取假为T1T1T2T242n对于第二个判断:u 条件A2 取真为 ,取假为 条件X1 取真为 ,取假为测试用例 覆盖分支 条

    13、件取值【(2,0,4),(2,0,3)】L1(c,e)【(1,0,1),(1,0,1)】L2(b,d)【(2,1,1),(2,1,2)】L3(b,e)或T3T3T4T T T T12344321TTTTT T T T1234T443 测 试 用 例覆盖分支 条件取值【(1,0,3),(1,0,4)】L3(b,e)【(2,1,1),(2,1,2)】L3(b,e)n判定条件覆盖就是设计足够的测试用例,使得,同时。T T T T1234T T T T123444 测 试 用 例覆盖分支 条件取值【(2,0,4),(2,0,3)】L1(c,e)【(1,1,1),(1,1,1)】L2(b,d)T T T

    14、 T1234T T T T1234A B A B X A20101andorandandA X B A X11021andorandand45n条件组合覆盖就是设计足够的测试用例,运行被测程序,使得。记 A1,B0 作 A1,B0 作 A 1,B0 作 A 1,B0 作T T12T T12T T12T T1246 A2,X1 作 A2,X 1 作 A2,X1 作 A2,X 1 作 测 试 用 例 覆盖条件 覆盖组合【(2,0,4),(2,0,3)】(L1),【(2,1,1),(2,1,2)】(L3),【(1,0,3),(1,0,4)】(L3),【(1,1,1),(1,1,1)】(L2),T T

    15、34T T34T T34T T34T T T T1234T T T T1234T T T T1234T T T T123447n路径测试就是设计足够的测试用例,。测 试 用 例 通过路径 覆盖条件【(2,0,4),(2,0,3)】ace(L1)【(1,1,1),(1,1,1)】abd(L2)【(1,1,2),(1,1,3)】abe(L3)【(3,0,3),(3,0,1)】acd(L3)T T T T1234T T T T1234T T T T1234T T T T341248n当程序中判定多于一个时,形成的分支结构可以分为两类:和。n对于,若有n个判定语句,需要n+1个测试用例;n对于,若有n

    16、个判定语句,需要有2n个测试用例,覆盖它的2n条路径。当n较大时将无法测试。4950n循环分为4种不同类型:、和。零次循环:从循环入口到出口 一次循环:检查循环初始值 二次循环:检查多次循环 m次循环:检查在多次循环 最大次数循环、比最大次数多一次、少一次的循环。51 5253循环 i n Ai Ai+1 Ai+2 k 路 径 0 1 2 1 1 i ac 1 2 1 2 i abefc 2 1 i+1 abdfc 1 3 1 2 3 i abefefc 2 3 1 i+2 abefdfc 3 2 1 i+2 abdfdfc 3 1 2 i+1 abdfefc d 改 k 的值,e 不改 k

    17、的值54 对最内层循环做简单循环的全部测试。所有其它层的循环变量置为最小值;逐步外推,对其外面一层循环进行测试。测试时保持所有外层循环的循环变量取最小值,所有其它嵌套内层循环的循环变量取“典型”值。反复进行,直到所有各层循环测试完毕。5556 对全部各层循环同时取最小循环次数,或者同时取最大循环次数如果各个循环互相独立,则可以用与简单循环相同的方法进行测试。但如果几个循环不是互相独立的,则需要使用测试嵌套循环的办法来处理。这一类循环应该使用结构化程序设计方法重新设计测试用例。57n基本路径测试方法把覆盖的路径数压缩到一定限度内,。n它是在程序控制流图的基础上,方法。设计出的测试用例要保证在测试

    18、中,程序的每一个可执行语句至少要执行一次。58n符号为控制流图的一个结点,表示一个或多个无分支的PDL语句或源程序语句。箭头为边,表示控制流的方向。59n在选择或多分支结构中,分支的汇聚处应有一个汇聚结点。n边和结点圈定的区域叫做区域,当对区域计数时,图形外的区域也应记为一个区域。n如果判断中的条件表达式是由一个或多个逻辑运算符(OR,AND,NAND,NOR)连接的复合条件表达式,则需要改为一系列。606162n程序的环路复杂性给出了,这是确保程序中每个可执行语句至少执行一次所必需的测试用例数目的上界。n从控制流图来看,一条独立路径是至少包含有一条在其它独立路径中从未有过的边的路径。63n例

    19、如,在图示的控制流图中,一组独立的路径是path1:1-11path2:1-2-3-4-5-10-1-11path3:1-2-3-6-8-9-10-1-11path4:1-2-3-6-7-9-10-1-11n路径 path1,path2,path3,path4组成了控制流图的一个基本路径集。64n导出测试用例,。n根据判断结点给出的条件,选择适当的数据以保证某一条路径可以被测试到 。65n每个,。如果所有测试用例都执行完毕,则可以确信程序中所有的可执行语句至少被执行了一次。n必须注意,一些独立的路径(如例中的路径1),往往不是完全孤立的,有时它是程序正常的控制流的一部分,这时,这些路径的测试可

    20、以是另一条路径测试的一部分。66u u u u 67n等价类划分是一种典型的黑盒测试方法,使用这一方法时,。n等价类划分方法,即程序的输入域,然后。68n使用这一方法设计测试用例要经历(列出等价类表)和两步。等价类是指某个输入域的子集合。在该子集合中,。测试某等价类的代表值就等价于对这一类其它值的测试。69n等价类的划分有两种不同的情况:是指对于程序的规格说明来说,是合理的,有意义的输入数据构成的集合。:是指对于程序的规格说明来说,是不合理的,无意义的输入数据构成的集合。n在设计测试用例时,要同时考虑有效等价类和无效等价类的设计。70n划分等价类等价类的原则。(1)71n例如,在程序的规格说明

    21、中,对输入条件有一句话:“”则有效等价类是“1项数999”两个无效等价类是“项数1”或“项数999”。在数轴上表示成:72(2)n例如,在Pascal语言中对变量标识符规定为“以字母打头的串”。那么所有以字母打头的构成有效等价类,而不在此集合内(不以字母打头)的归于无效等价类。73(3)(4)如果规定了输入数据的一组值,而且程序要对每个输入值分别进行处理。这时可为 每一个输入值确立一个有效等价类,此外针对这组值确立一个无效等价类,它是所有不允许的输入值的集合。74n例如,在教师上岗方案中规定对教授、副教授、讲师和助教分别计算分数,做相应的处理。因此可以确定4个有效等价类为教授、副教授、讲师和助

    22、教,一个无效等价类,它是所有不符合以上身分的人员的输入值的集合。(5)75n例如,Pascal语言规定“一个语句必须以分号;结束”。这时,可以确定一个有效等价类“以;结束”,若干个无效等价类“以:结束”、“以,结束”、“以 结束”、“以LF结束”等。n确立测试用例在确立了等价类之后,建立等价类表,列出所有划分出的等价类。76n再从划分出的等价类中按以下原则选择测试用例:(1)为每一个等价类规定一个唯一编号;(2)设计一个新的测试用例,使其,重复这一步,直到所有的有效等价类都被覆盖为止;(3)设计一个新的测试用例,使其,重复这一步,直到所有的无效等价类都被覆盖为止。77n用等价类划分法设计测试用

    23、例的实例在某一PASCAL语言版本中规定:“标识符是由字母开头,后跟字母或数字的任意组合构成。有效字符数为8个,最大字符数为80个。”并且规定:“标识符必须先说明,再使用。”“在同一说明语句中,标识符至少必须有一个。”78用等价类划分的方法,建立输入等价类表:79n下面选取了9个测试用例,它们覆盖了所有的等价类。(1),(2),(4),(8),(9),(12),(14)(3)(5)80 (6)(7)多于80个字符 (10)(11)(13)(15)81n边界值分析也是一种黑盒测试方法,是对等价类划分方法的补充。n人们从长期的测试工作经验得知,。因此针对各种边界情况设计测试用例,。82n比如,在做

    24、三角形计算时,要输入三角形的三个边长:A、B和C。我们应注意到这三个数值应当满足 A0、B0、C0、ABC、ACB、BCA,才能构成三角形。但如果把六个不等式中的任何一个大于号“”错写成大于等于号“”,那就不能构成三角形。问题恰出现在容易被疏忽的边界附近。83n这里所说的边界是指,相当于输入等价类和输出等价类而言,稍高于其边界值及稍低于其边界值的一些特定情况。n使用边界值分析方法设计测试用例,首先应确定边界情况。,而不是选取等价类中的典型值或任意值做为测试数据。84n人们也可以靠经验和直觉推测程序中可能存在的各种错误,从而有针对性地编写检查这些错误的例子。这就是错误推测法。n错误推测法的基本想

    25、法是:。85n因果图的适用范围如果在测试时必须考虑,可使用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来设计测试用例,这就需要利用因果图。因果图方法最终生成的就是判定表。它适合于检查程序输入条件的各种组合情况。86n用因果图生成测试用例的基本步骤(1)分析软件规格说明描述中,哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。(2)分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系?根据这些关系,画出因果图。87(3)由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。为表明这

    26、些特殊情况,在因果图上用一些记号标明约束或限制条件。(4)把因果图转换成判定表。(5)把判定表的每一列拿出来作为依据,设计测试用例。88n在因果图中出现的基本符号通常在因果图中用Ci表示原因,用Ei表示结果,各结点表示状态,可取值“0”或“1”。“0”表示某状态不出现,“1”表示某状态出现。n主要的原因和结果之间的关系有:89n表示约束条件的符号为了表示原因与原因之间,结果与结果之间可能存在的约束条件,在因果图中可以附加一些表示约束条件的符号。90 n例如,有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下:,91(1)分析这一段说明,列出原因和结果原因:1.售货机有零

    27、钱找 2.投入1元硬币 3.投入5角硬币 4.押下橙汁按钮 5.押下啤酒按钮建立中间结点,表示处理中间状态11.投入1元硬币且押下饮料按钮12.押下橙汁或啤酒的按钮13.应当找5角零钱并且售货机有零钱找14.钱已付清92 结果:21.售货机零钱找完灯亮 22.退还1元硬币 23.退还5角硬币 24.送出橙汁饮料 25.送出啤酒饮料(2)画出因果图。所有原因结点列在左边,所有结果结点列在右边。(3)由于 2 与 3,4 与 5 不能同时发生,分别加上约束条件E。(4)因果图93 n(5)转换成判定表94 95n测试过程按4个步骤进行,即、和。n开始是,集中对用源代码实现的每一个程序单元进行测试,

    28、检查各个程序模块是否正确地实现了规定的功能。9697把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一起进行测试。98n单元测试又称模块测试,的测试工作。其目的在于发现各模块内部可能存在的各种差错。n单元测试需要。多个模块可以平行地独立进行单元测试。99n在单元测试时,测试者需要依据详细设计说明书和源程序清单,了解该模块的I/O条件和模块的逻辑结构,主要采用白盒测试的测试用例,辅之以黑盒测试的测试用例,使之对任何合理的输

    29、入和不合理的输入,都能鉴别和响应。100101n在单元测试的开始,应对进行测试。测试项目包括:u 调用本模块的输入参数是否正确;u 本模块调用子模块时输入给子模块的参数是否正确;u 全局量的定义在各模块中是否一致;102n在做时要考虑:u 文件属性是否正确;u OPEN与CLOSE语句是否正确;u 缓冲区容量与记录长度是否匹配;u 在进行读写操作之前是否打开了文件;u 在结束文件处理时是否关闭了文件;u 正文书写输入错误,u IO错误是否检查并做了处理。103n不正确或不一致的数据类型说明n使用尚未赋值或尚未初始化的变量n错误的初始值或错误的缺省值n变量名拼写错或书写错n不一致的数据类型n全局

    30、数据对模块的影响 104n选择适当的测试用例,对模块中进行测试。n应当设计测试用例查找由于、或而导致的错误。n对基本执行路径和循环进行测试可以发现大量的路径错误。105n出错的描述是否难以理解n出错的描述是否能够对错误定位n显示的错误与实际的错误是否相符n对错误条件的处理正确与否n在对错误进行处理之前,错误条件是否已经引起系统的干预等106n注意数据流、控制流中刚好等于、大于或小于确定的比较值时出错的可能性。对这些地方要仔细地选择测试用例,认真加以测试。n如果对模块运行时间有要求的话,还要专门进行关键路径测试,以确定最坏情况下和平均意义下影响模块运行时间的因素。107n模块并不是一个独立的程序

    31、,在考虑测试模块时,同时要考虑它和外界的联系,用一些辅助模块去模拟与被测模块相联系的其它模块。u u 存根模块108109n如果一个模块要完成多种功能,可以将这个模块看成由几个小程序组成。必须对其中的每个小程序先进行单元测试要做的工作,对关键模块还要做性能测试。n对支持某些标准规程的程序,更要着手进行互联测试。有人把这种情况特别称为模块测试,以区别单元测试。110n组装测试(集成测试、联合测试)n通常,在单元测试的基础上,需要将所有模块按照设计要求组装成为系统。这时需要考虑的问题是:u 在把各个模块连接起来的时侯,是否会丢失;u;111u,;u;u,从而达到不能接受的程度。,发现并排除在模块连

    32、接中可能出现的问题,最终构成要求的软件系统。112n子系统的组装测试特别称为,它所做的工作是要找出组装后的的不一致。n通常,把模块组装成为系统的方式有两种u 一次性组装方式u 增殖式组装方式113n它是一种非增殖式组装方式。也叫做整体拼装。n使用这种方式,首先对每个模块分别进行模块测试,然后再把所有模块组装在一起进行测试,最终得到要求的软件系统。114115n这种组装方式又称n首先对一个个模块进行模块测试,然后将这些模块逐步组装成较大的系统n在组装的过程中边连接边测试,以发现连接过程中产生的问题n通过增殖逐步组装成为要求的软件系统。116n这种组装方式将模块,。n自顶向下的增殖方式在测试过程中

    33、较早地验证了主要的控制和判断点。n选用按深度方向组装的方式,可以首先实现和验证一个完整的软件功能。117118n这种组装的方式是从。n因为模块是自底向上进行组装,对于一个给定层次的模块,它的子模块(包括子模块的所有下属模块)已经组装并测试完成,所以。在模块的测试过程中需要从子模块得到的信息可以直接运行子模块得到。119n自顶向下增殖的方式和自底向上增殖的方式各有优缺点。n一般来讲,一种方式的优点是另一种方式的缺点。120u 首先对输入输出模块和引入新算法模块进行测试;u 再自底向上组装成为功能相当完整且相对独立的子系统;u 然后由主模块开始自顶向下进行增殖测试。121u 首先对含读操作的子系统

    34、自底向上直至根结点模块进行组装和测试;u 然后对含写操作的子系统做自顶向下的组装与测试。u 这种方式采取自顶向下的方式测试被修改的模块及其子模块;u 然后将这一部分视为子系统,再自底向上测试。122n在组装测试时,应当确定关键模块,对这些关键模块及早进行测试。n关键模块的特征:满足某些软件需求;在程序的模块结构中位于较高的层次(高层控制模块);较复杂、较易发生错误;有明确定义的性能要求。123n确认测试又称。任务是验证软件的功能和性能及其它特性是否与用户的要求一致。n对软件的功能和性能要求在软件需求规格说明书中已经明确规定。它包含的信息就是软件确认测试的基础。124125n有效性测试是在模拟的

    35、环境(可能就是开发的环境)下,运用黑盒测试的方法,验证被测软件是否满足需求规格说明书列出的需求。n首先制定测试计划,规定要做测试的种类。还需要制定一组测试步骤,描述具体的测试用例。126n通过实施预定的测试计划和测试步骤,确定u 软件的特性是否与需求相符;u 所有的文档都是正确且便于使用;u 同时,对其它软件需求,例如可移植性、兼容性、出错自动恢复、可维护性等,也都要进行测试127n在全部软件测试的测试用例运行完后,所有的测试结果可以分为两类:u。这说明软件的这部分功能或性能特征与需求规格说明书相符合,从而这部分程序被接受。u。这说明软件的这部分功能或性能特征与需求规格说明不一致,因此要为它提

    36、交一份问题报告。128n 软件配置复查的目的是保证n 软件配置的所有成分都齐全;n 各方面的质量都符合要求;n 具有维护阶段所必需的细节;n 而且已经编排好分类的目录。n应当严格遵守用户手册和操作手册中规定的使用步骤,以便检查这些文档资料的完整性和正确性。129n在通过了系统的有效性测试及软件配置审查之后,就应开始系统的验收测试。n验收测试是以用户为主的测试。软件开发人员和QA(质量保证)人员也应参加。n由用户参加设计测试用例,使用生产中的实际数据进行测试。130n在测试过程中,除了考虑软件的功能和性能外,还应对软件的可移植性、兼容性、可维护性、错误的恢复功能等进行确认。n确认测试应交付的文档

    37、有:u 确认测试分析报告u 最终的用户手册和操作手册u 项目开发总结报告。131n系统测试,是将通过确认测试的软件,与计算机硬件、外设、某些支持软件、数据和人员等其它系统元素结合在一起,对计算机系统进行一系列的组装测试和确认测试。n系统测试的目的在于。132n在软件交付使用之后,用户将如何实际使用程序,对于开发者来说是无法预测的。是由一个,也可以是。133的目的是评价软件产品的FLURPS(即功能、局域化、可使用性、可靠性、性能和支持)。尤其注重产品的界面和特色。可以从软件产品编码结束之时开始,或在模块(子系统)测试完成之后开始,也可以在确认测试过程中产品达到一定的稳定和可靠程度之后再开始。1

    38、34是由软件的。这些用户返回有关错误信息给开发者。n测试时,开发者通常不在测试现场。因而,是在开发者无法控制的环境下进行的软件现场应用。n在测试中,由用户记下遇到的所有问题,包括真实的以及主观认定的,定期向开发者报告。135主要衡量产品的FLURPS。着重于产品的支持性,包括文档、客户培训和支持产品生产能力。n只有当达到一定的可靠程度时,才能开始。它处在整个测试的最后阶段。同时,产品的所有手册文本也应该在此阶段完全定稿。136自动测试工具1、测试数据生成程序、测试数据生成程序(Test case generator):功能:自动生成大量输入数据功能:自动生成大量输入数据主要用于:主要用于:测测

    39、试系统在实际环境中的性能(例如测试数据库管理系统)试系统在实际环境中的性能(例如测试数据库管理系统)自动校核系统输出自动校核系统输出(若输出数据的语法可以被形式地说若输出数据的语法可以被形式地说明明)缺点:不能自动生成预期的输出,因此用途有限。缺点:不能自动生成预期的输出,因此用途有限。137自动测试工具2、动态分析程序、动态分析程序(Dynamic analyzer)功能:分析程序中每个语句的执行次数。功能:分析程序中每个语句的执行次数。组成:组成:检测部分:插入检测语句,负责收集、整理语检测部分:插入检测语句,负责收集、整理语句执行次数;句执行次数;显示部分:以容易理解的形式印出收集的信息

    40、。显示部分:以容易理解的形式印出收集的信息。用途:用途:发现测试中没有执行的语句,以增加相应的测发现测试中没有执行的语句,以增加相应的测试用例;试用例;发现不按要求终结的循环;发现不按要求终结的循环;发现不应执行却执行了的代码,及应执行而未发现不应执行却执行了的代码,及应执行而未执行的代码。执行的代码。1383、静态分析程序、静态分析程序(Static analyzer)不执行程序,仅扫描程序的正文,从中寻找不执行程序,仅扫描程序的正文,从中寻找可能导致错误的异常情况。可能导致错误的异常情况。自动测试工具4、文件比较程序、文件比较程序(File inspector)主要步骤:主要步骤:建立一个文件存放预期的正确结果;建立一个文件存放预期的正确结果;执行测试,将输出数据存进另一个文件;执行测试,将输出数据存进另一个文件;使用文件比较程序来比较上述两个文件,印出使用文件比较程序来比较上述两个文件,印出两者之差异。两者之差异。139JUNIT简介140141142143144145146147148

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:软件测试的原则课件.ppt
    链接地址:https://www.163wenku.com/p-5672589.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库