微软用户_引子_引子软件测试在整个软件开发过程中的作3957901800001_第1页
微软用户_引子_引子软件测试在整个软件开发过程中的作3957901800001_第2页
微软用户_引子_引子软件测试在整个软件开发过程中的作3957901800001_第3页
微软用户_引子_引子软件测试在整个软件开发过程中的作3957901800001_第4页
微软用户_引子_引子软件测试在整个软件开发过程中的作3957901800001_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、引子1. 软件测试在整个软件开发过程中的作用软件测试是对软件产品和阶段性工作成果进行质量检验,力求发现其中的各种缺陷,并督促修正缺陷,从而控制和保证软件产品的质量。所以软件测试是软件公司致力于提高软件产品质量的重要手段之一。软件缺陷发现越迟代价越大缺陷发现越迟,影响范围越广缺陷发现越迟,返工的工作量越大缺陷发现越迟,造成的危害越大2. V 模型的理解1 )软件测试和软件开发构成一个全过程的交互、协作的关系,两者自始至终一起工作,共同致力于同一个目标一一按时、高质量地完成项目。2)在 V 模型中,前半部分是开发,可由需求分析定义,系统、架构设计、详细或程序设计,编码构成。测试过程被加在开发过程的

2、后半部分。单元测试所检测代码的开发是否符合详细设计的要求。集成测试所检测此前测试过的各组成部分是否能完好地结合到一起。系统测试所检测已集成在一起的产品是否符合系统规格说明书的要求。而验收测试则检测产品是否符合最终用户的需求。第 1 章1?软件质量的概念,质量需求包括功能的、非功能的、用户需求和企业需求软件产品满足规定的和隐含的与需求能力有关的全部特征和特性,包括:1)软件产品质量满足用户要求的程度2)软件各种属性组合的程度3)用户对软件产品的综合反映程度4)软件在使用过程中满足用户要求的程度质量需求:就是通过人机交互界面来完成用户所需的各项操作,包括数据的输入和结果输出。非功能的:主要体现在性

3、能,可用性,可靠性,兼容性,安全性,用户需求:质量的用户需求是和用户直接相关的质量需求,包含功能性需求和部分非功能需求。企业需求 :主要是一些给功能性的需求,如软件的可维护性,兼容性,可移植性和可扩展性。2?软件缺陷的定义软件缺陷就是软件产品中所存在的问题,最终表现为用户所需要的功能没有完全实现, 不能满足或不能全部满足用户的需求。从内部看,软件缺陷是软件产品 开发或维护过程 中所存在的错误、毛病等各种问题 ; 从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。3?软件缺陷和软件错误的区别软件缺陷范围更广,涵盖了软件错误,还涵盖不一致性问题、功能需求定义缺陷和产品设计缺陷等。软件错误,

4、属于软件缺陷的一种一一程序或系统的内部缺陷,往往是软件代码本身的问题。软件错误往往会导致系统的某项功能失效或者使用的故障,即软件内部缺陷最终表现为外部缺陷。外部缺陷主要表现为软件故障或功能失效,即软件提供给用户的功能或服务,不能达到用户的要求或没有达到事先设计的指标,如:突然中断4. 软件测试的定义(几种不同的观点,怎样理解)11)软件测试的狭义观点和广义观点a. 狭义观点:程序测试是为了发现错误而执行程序的过程(瀑布模型 )b. 广义观点:将测试延伸到需求评审、设计审查活动中去。由静态测试和动态测试构成一个全过程的、完整的软件测试。2)软件测试的辩证观点a. 正向思维:验证软件是 - 工作的

5、 |,以正向思维,针对软件系统的所有功能点,逐个验证其正确性。b. 逆向思维:证明软件是不工作的 II,以反向思维方式,不断思考开发人员理解的误区、不良的习惯、程序代码的边界、无效数据的输入以及系统的弱点,试图破坏系统、摧毁系统 , 目标就是发现系统中各种各样的问题。3)软件测试的风险观点软件测试是对软件系统中潜在的各种风险进行评估的活动4)软件测试的经济学观点一个好的测试用例是在于它能发现至今未发现的错误。缺陷发现得越早, 所造成得代价就越低 , 这就是从经济学的观点来说明测试越早越好。5)软件测试的标准观点软件测试就是验证(Verification )和有效性确认( Validation

6、) I 活动构成的整体,即软件测试=V&V5. 软件测试的目标1) 直接目标 就是为了更快更早地将软件产品或软件系统中所存在的问题找出来,以 促进系统分析人员、设计人员和程序员尽快地解决这些问题。2)间接目标 软件测试的间接目标是验证了所有功能已按照事先设计或定义而实现。但其直接目的并非验证每个功能都能实现 ,而是设法找到每个功能不能正常实现的地方,即 尽量促使软件故障的产生。6. 测试过程和开发过程的关系( W 模型 , 同步和依赖关系)A 测试过程和开发过程保持同步的关系。软件分析、设计和实现的过程, 同时伴随着软件测试验证和确认的过程B 测试过程是对开发过程中阶段性成果和最终的产

7、品进行验证的过程,而软件开发的进一步活动又依赖于测试的结果。所以两者相互依赖。前期, 更多地依赖开发过程(设计和实现能力决定整个软件过程的进展状态), 后期更多地依赖测试过程(测试策略和能力,会直接影响测试效率 ,测试效率高就能更快地发现缺陷, 缺陷就能得到更快地修正)。C 测试工作的重点和开发工作的重点可能是不一样的, 两者有各自的特点。不论是在资源管理 , 还是风险管理上 ,两者都存在差异。2测试&开发的同步关系第 2 章1?测试计划的目标测试计划的目标是提供一个框架、不断收集信息,对不确定性进行分析,将不确定性的内容慢慢转化为确定性的内容,该过程最终使得项目测试负责人能够对资源、

8、成本及进度进行越来越合理、准确的估算。*2. 需求评审的重要性1)产品需求审查和评审是软件开发重要环节之一,也是测试活动之一,即静态测试需求验证。通过需求审查保证系统需求在市场/产品需求文档及其相关文档中得到准确、完整、无歧义的反映,并使各类开发人员在需求理解上达成一致。2 )软件缺陷并不只是在编程阶段才产生,需求和设计阶段同样会产生缺陷。3)需求评审重要性表现方面发现需求定义中的问题,尽早发现缺陷,降低劣质成本。保证软件需求的可测试性。与市场、产品、开发等相关人员在需求理解上认识一致,以免后期的争吵。通过需求评审,更好的理解产品的功能性与非功能性需求,为制定测试计划打下基础。确定测试目标与范

9、围。虽然此后需求会发生变更,但能得到有效控制,降低测试风险。*3. 评审的类型管理评审、技术评审、文档评审、流程评审*4.需求评审的标准正确性、完备性、一致性、可行性、易理解性、易修改性、易测试性、易追溯性第 3 章*1.为什么要进行设计验证P85-86软件设计是把 软件需求转换为软件表示的过程,也是将用户需求准确转化为软件系统 的唯 一途径,对软件3设计进行验证,就是更好地保证这种转换的正确性和完整性,也是为了更好地设计系统测试的用例。再者,软件设计的验证,需要在编程之前进行,这样做可避免变成误入歧途,并为软件部署的准备获得更多的时间。这一切,都有助于缩短软件开发周期,使产品早日面向市场,提

10、高软件企业的竞争力。*2. 验证和确认的区别P97验证过程与确认过程(V&V )看起来类似,但是它们目标不同,处理的对象也不同,“验证”是检验软件工作产品是否符合规定的设计要求,而“确认”过程则要证明所开发的最终产品在其预定的环境中能发挥预定的作用,满足客户使用的需求。“验证”是以产品设计规格说明书作为依据的,而“确认”是以客户需求为目标的。第 4 章1?为什么要测试用例测试需求和范围通过测试用例体现出来,并以更为有效的方式来执行测试,以便于更快地发现程序的缺陷。测试用例是测试脚本开发、测试执行的基础,只有设计好测试用例才能保证测试的覆盖率。A. 测试用例是测试人员测试过程中的重要参考

11、依据。B. 测试用例可以帮助实施有效的测试。C. 良好的测试用例不断的被重复使用,使得测试事半功倍D. 测试用例是一个知识积累的过程。E 测试用例是一个知识传递的过程F . 即使是很小的项目,也可能会哟几千甚至更多的测试用例G 从项目管理的角度讲,测试用例的通过率检验代码质量保证效果最主要的指标之一。H.测试用例也可以评估测试人员进度,工作量,以及跟踪或管理测试人员的工作效率的主要因素测试用例是测试工作的指导,是软件测试的必须遵守的准则,更是软件测试质量稳定的根本保障。2?测试用例的元素测试目标、测试对象、测试环境要求、测试前提、输入数据和操作步骤,概括为5W1Ha. Why - 为什么而测?

12、b. What 测什么?c. Where - 在哪里测?d. When - 什么时候开始测?e. Which 哪些输入数据?f. How - 如何操作软件?3.对黑盒测试和白盒测试的理解答:黑盒测试方法:是把程序看做一个不能打开的黑盒子,在完全不考虑内部结构和内部特性的情况下来考察数据的输入,条件限制和数据输出,进而完成测试。黑河测试方法,指根据用户的需求和已经定义好的产品规格,针对程序结构和用户界面进行测试,检验程序是否能适当接受输入数据而产生正确的输出信息,并且保持外部信息的完整性。白盒测试方法:也称为结构测试或逻辑驱动测试,就是清除软件产品内部的逻辑结构和工作过程,针对程序语句,路径,变

13、量状态等进行测试。例如,检验程序的各个分支是否得到满足,检验程序是否按照事先预定的路径进行执行。白盒测试的主要方法有逻辑覆盖,分支覆4盖、条件组合覆盖,基本路径测试等。4?黑盒和白盒的区别1) 黑盒测试的优点有:a?比较简单,不需要了解程序内部的代码及实现;b?与软件的内部实现无关;c?从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;d?基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;e. 在做软件自动化测试时较为方便。2) 黑盒测试的缺点有:a 不可能覆盖所有的代码,覆盖率较低;b. 自动化测试的复用性较低。3) 白盒测试的优点有:帮助软件测试人员增大代码的覆盖率

14、,提高代码的质量,发现代码中隐藏的问题。4) 白盒测试的缺点有:a. 程序运行会有很多不同的路径,不可能测试所有的运行路径;b. 测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求;c. 系统庞大时,测试开销会非常大。5. 功能测试的内容界面测试、数据测试、操作测试、逻辑测试、接口测试6. 功能测试的方法(等价类法、 *边界值法、 *因果图法、 *决策表法、 *错误推测法、 *场景法、 *状态图法、 *正交实验法)等价类法:分为有效等价类和无效等价类1)边界值法:对 16-bit 的整数而言 32767 和-32768 是边界屏幕上光标在最左上、最右下位

15、置报表的第一行和最后一行数组元素的第一个和最后一个循环的第 0 次、第 1 次和倒数第2 次、最后一次a. 边界值分析法利用输入变量的最小值(min ) 、略大于最小值 (min+ )、输入值域内的任意值( nom )、略小于最大值 (max- ) 和最大值 (max ) 来设计测试用例b. 推论:对于一个含有n 个变量的程序,采用边界值分析法测试程序会产生4n+1 个测试用例。例:有二元函数f(x,y ),其中 x ?1,11 ,y ?1,31 。则采用边界值分析法设计的测试用例是:5 <1,15>, <2,15>, <11,15>, <12,15&

16、gt;, <6,15>, <6,1>, <6,2>, <6,30>, <6,31> 2)因果图:3)正交实验法a. 把影响实验指标的条件称为因子,而影响实验因子的条件叫因子的状态(水平)b?正交实验法,比使用等价类划分、边界值分析、因果图等方法有以下优点:节省测试工作工时;可控制生成的测试用例数量;测试用例具有一定的覆盖率。c.正交表选择原则:(1)每个因子水平数目相同的情况,因子数为M,水平数为 N , 则最佳选择一个M 因子 N 水平的正交表,如果不存在这样的正交表,则选择K 因子 N 水平的正交表( K>M )。( 2)如

17、果不同因子水平数目不相同,选择出现次数最多的水平数(相同的话选择大的)( 3)如果所选的正交表的水平数小于因子最大的水平数。比如:a1a2b1b2 b3c1c2则把 bl b2 放在一起,写用例的时候再分开写。blclb2 .albib?ci?1a2blb2c2一bl” .alb3c2呂2a2b3clb2 ?2例:假设一个 WEB 站点,该站点有大量的服务器和操作系统,并且有许b3c2多具有各种插件的浏览器浏览 :WEB 浏览器: Netscape6.2 、IE6.0 、 Opera4.0 插件:无、 RealPlayer 、MediaPlayer应用服务器: IIS 、Apche 、Nets

18、cape Enterprise操作系统:Windows2000 、Windows NT 、Linux提取系统功能说明中的因子:1、 WEB 浏览器2、插件3、应用服务器4、 操作系统分析各因子的水平1、 WEB 浏览器: 1 = Netscape6.2、2=IE6.0 、3=Opera4.02、插件:仁 None 、2=RealPlayer、3=MediaPlayer3、应用服务器 :仁 IIS 、2=Apche 、3=Netscape Enterprise4、 操作系统 :仁 Windows2000 、 2=Windows NT 、3=Linux 3水平 4 因素正交表 L9( 3 4)浏览

19、器播件应用 JK 务黑1Neucape6.2无nsWind000Net$cape6.2RealPlayerApch<jWindows NT3亡 6 JMediaPiaycrNttieapeLinux斗IE.0无ApcheLinuxIE6.0RealPlayerNetscapeXindcm p520006IE6.0MediaPlaytrnsWindows XT67Opera"无NetscapeWindows NTSOpera4.0RealPlaverIISLinux9Opera4,0McdiaPlaverApcheWindows2 000*7. 测试用例的评审,检查表的使用P14

20、2好的测试用例:测试范围的覆盖率高、测试用例设计能反向思维,有效地发现缺陷、易用性、易读性、易维护性。测试用例的评审,可以从正、反两面进行检查。正面测试用例要求全面,反面测试用例要有创造性。检查表是用来帮助评审员找出评审的对象中可能的缺陷。提高可靠性、效率。*8.对测试套件的理解测试套件是由一系列测试用例并与之关联的测试环境组合而构成的集合,已满足测试执行的特定要求。通过测试套件,将服务于同一个测试目标、特定阶段性测试目标或某一运行环境下的一系列测试用例有机地组合起来1)按程序功能模块组织2)按测试用例的类型组织3)按测试用例的优先级组织第 5 章1?使用测试工具的优缺点1)优点:a?缩短软件

21、开发测试周期。对上千个测试用例来说,测试工具可以在很短时间内完成测试,而且测试工具不知劳累,可24 小时不停地运行同样的测试用例10 遍、 100 遍等。这些都说明了软件测试工具执行测试具有速度高、效率高的特点。b. 脚本可以多次重复运行,降低成本。在回归测试中或在很多不同的测试环境(如不同的浏览器、不同的操作系统、不同的连接条件等)下,测试工具可以多次运行同样的测试用例,而测试脚本只要开发一次。c. 可增强测试的稳定性和可靠性,通过测试工具运行测试脚本,能保证百分之百被执行,所有的测试结果都能客观地记录下来。d. 可提高软件测试的准确度和精确度,软件测试自动化的结果都是数量化的,并且它能与所

22、预期结果或规格说明书所规定的标准进行量化对比。2)缺点2?手工测试和自动化测试的区别手工测试优点:发现缺陷效率高、容易实施、创造性,灵活性、覆盖率量化困难、重复测试效率低、不一致性,可靠性低、依赖人力资源。缺点:无法做到覆盖所有代码路径、很难捕捉到与时序、死锁、资源冲突、多线程等有关的错误、难以实施系统负载/性能测试和可靠性测试、难以短时间完成大量的测试用例、很难面对测试条件组合爆炸。自动化测试优点;高效率、高复用性、覆盖率容易度量、准确,可靠、不知疲劳、激励团队士气、机械,难以发现缺陷、一次性投入大。缺点:不现实的期望、缺乏具有良好素质,经验的测试人才、测试工具本身的问题影响测试的质量、测试

23、脚本的质量低劣、没有考虑公司的实际情况、没有形成一个良好的使用测试工具环境。两者相互补充:在系统功能逻辑测试、验收测试、适用性测试、涉及交互性测试时,多采用手工测试方法;单元测试、集成测试、系统负载或性能、可靠性测试等比较适合采用TA ; 对那种不稳定、开发周期短或一次性的软件等不适合 TA 工具本身缺乏想象力和创造性,自动测试只能发现15% 的缺陷,而手工测试可以发现85%的缺陷;*3. 测试工具的实现原理71)代码分析(白盒测试自动化)2)对象识别()3)捕获和回放(黑盒测试自动化)4)脚本技术(包含数据和指令)5)自动结果比较4. 知道几种主要的功能测试工具盒性能测试工具(不考)第 6

24、章*1. 代码审查的具体方法P197代码审查的方法很多,如互查( Peer-to-Peer )、走查( Walk-Through)、会议评审( In spection)2. 什么是单元测试单元测试就是对已实现的软件最小单元进行测试,以保证构成软件系统的各个单元的质量。3.单元测试的方法单元测试主要采用白盒测试方法,辅以黑盒测试方法。白盒测试方法应用于代码评审、单元程序检验之中,而黑盒测试方法则应用于模块、组件等大单元的功能测试之中4. 驱动程序和桩程序1、驱动程序( driver ), 对底层或子层模块进行(单元或集成)测试时所编制的调用被测模块的程序,用以模拟被测模块的上级模块2、桩程序(

25、stub ),也有人称为存根程序,对顶层或上层模块进行测试时,所编制的替代下层模块的程序,用以模拟被测模块工作过程中所调用的模块。8I测试 z 吉果5?白盒测试的具体方法(逻辑覆盖语句覆盖和判定覆盖卜基本路径测试)答:基本路径测试时程序控制流程图的基础上,通过分析控制构造的环路复杂性,导出基本可执行集合,从而设计测试用例的方法。包含5 个方面: 1 程序流程图 2 计算程序环境的复杂性3 导出测试用例 4 准备测试用例 5 图形矩阵逻辑覆盖:判定覆盖条件覆盖判定- 条件覆盖条件组合覆盖9执行语句块丄执行语句块2执行语句块3语句覆盖要实现 DoWork函数的语句覆盖,只需设计一个测试用例就可以覆

26、盖程序中的所有可执行语句。只要通过路径 abd 就可以语句覆盖。测试用例输入为: x=4 、 y=5 、z=5 程序执行的路径是: abd判定覆盖要实现 DoWork函数的判定覆盖,需要设计两个测试用例测试用例的输入为:x=4 、 y=5 、z=5 ; x=2 、y=5 、z=5程序执行的路径分别是:abd ; ace使用 acd 、abe 两条路径的用例也满足判定覆盖条件覆盖测试用例执行路径覆盖条件覆盖分支X=4,y=6,z=5abdT1,T2, T3,T4bdX=2,y=5,z=15ace-( T1,T2,T3, T4)ce分析:上面这组测试用例不但覆盖了4 个条件的全部8 种情况,而且将

27、两个判定的4 个分支 b 、c、d、e 也同时覆盖了,即同时达到了条件覆盖和判定覆盖。路径覆盖测试用例执行路径覆盖条件X=4,y=6,z=5abdT1、T2、T3、 T4X=4,y=5,z=15acdT1、-T2 、T3、-T4X=2,y=5,z=15ace-T1 、 -T2 、 -T3 、 -T4X=5,y=5,z=5abeT1、 T2、 -T3、 -T46?最少测试用例的计算对于一般的、更为复杂的问题,估算最少测试用例个数的原则也是同样的:101+1+1-3,1) 如果在 N-S 图中存在有并列的层次A1、 A2 , A1 和 A2 的最少测试用例个数分别为al、a2 ,则由A1、 A2

28、两层所组合的N-S 图对应的最少测试用例数为al x a2 。2)如果在 N-S 图中不存在有并列的层次,则对应的最少测试用例数由并列的操作数决定,即 N-S 图中除谓词之外的操作框的个数。心例:如下图所示的两个 R-S 成逻辑覆盖?例:如下图所示的 N-S 图,成逻辑覆盖?完 , 至少需要多少个测试用例对于第一个 N-S 图: 由于图中并不存在并列的 层次,最少测试用例数由 并列的操作数决定,即为对于第二个 N-S 图: 由于图中没韦他令并列的 层次最少测试用例数仍 由并列的操作数决定 . 即 为1+1+1+1+1-5.至少需要多少个测试用例完分析该 N-S 圏:圏中的卩金和 67 是并列的

29、两 展*具中, 2 345对应的最 少测试用例数为 1+1T+1 -1=5 $ 67 层对应的测试用例数为21+1=3, 2345和 67 这两层纽合后对应的测试用例数为53=15最后, 由于两层纽合后的部分是不满足谓词1 时 所要做的操作,还要加上满足谓词1 要做的操唯,因此整个程序所需测试用例数为15+16°7?集成测试的模式1 )渐增式集成模式与非渐增式集成模式a.非渐增式测试模式:先分别测试每个模块,再把所有模块按设计要求放在一起结合成所要的程序,如大棒模式。因为所有的模块一次集成的,所以很难确定出错的真正位置,所在的模块、错误的原因,这种方法并不推荐在任何系统中使用,适合规

30、模较小的应用系统使11用。b?渐增式测试模式:把下一个要测试的模块同已经测试好的模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试。c. 自顶向下法(Top-down Integration)有深度优先和宽度优先d. 自底向上法:e. 混合法:对软件结构中较上层,使用的是“自顶向下”法;对软件结构中较下层,使用的是“自底向上”法,两者结合f.三明治集成方法:它将自顶向下和自底向上的集成方法有机结合起来,不需要写桩程序因为在测试初自底向上集成已经验证了底层模块的正确性。缺点:在真正集成之前每一个独立的模块没有完全测试过g. 改善的三明治集成方法:不仅自两头向中间集成,而且保证每

31、个模块得到单独的测试,使得测试进行比较彻底8.Junit 的基本使用,也就是怎样对一个类写Junit 测试程序Public calss TextSample extends TestCase创建,从派生 unit test需要的test case书写测试方法,提供类似于如下函数签名的测试方法:public void testXXXXX();编译,书写完 test case后,编译所写的test case类 运行,启动junit test runner,来运行这个test case。JUnit 脚本示例一:public class TestHelloWorld extends TestCase

32、BeforePublic void setUp() throws Exception/初始化Public TestHelloworld(String name)super(name);TestPublic final void testsay() helloword hi=new helloworld(); assertEquals(-hello world! Il,hi.say();AfterPublic void tearDown() throws Exception/撤销初始化public static void main(String args)JUnit 有四个重要的类: TestS

33、uite 、TestCase TestResult、TestRunner 。前三个类属于Framework包,后一个类在不同的环境下是不同的。如用的是文本测试环境,则是 。1.TestResult , 负责收集 TestCase 所执行的结果,它将结果分为两类,客户可预测的 Failure 和没有预测的Error 。同时负责将测试结果转发到TestListener12( 该接口由TestRunner 继承 ) 处理。2. TestR unner , 客户对象调用的起点,负责对整个测试流程的跟踪。能够显示返回的测试结果,且报告测试的进度。3. TestSuite ,负责包装和运行所有的TestC

34、ase4. TestCase 客户测试类所要继承的类,负责测试时对客户类进行初始化,以及测试方法调用。JUnit 共有七个包 , 核心的包就是junit.framework和 junit.runner。 Framework包负 责整个测试对象的构架, Ru nner 负责测试驱动。另有两个重要的接口: Test 和 TestListener :1.Test, 包含两个方法: run() 和 countTestCases(),它是对测试动作特征的提取。2.TestListener , 包含四个方法: addError() 、addFailure() 、startTest()和en dTest()

35、 ,它是对测试结果的处理以及测试驱动过程的动作特征的提取。Junit 的各种断言assertEquals(String message, expected, actual) 这是使用得最多的断言形式。expected 是你的期望值 ( 通常要硬编码 ) ,actual - 被测代码实际产生的值,message可选的消息 , 如果提供的话 , 将会在发生错误的时候报告这个消息。assertNull(String message,java.lang.Object object) 验证一个给定的对象是否为 Null( 或者为非 Null ), 如果答案为否,则将会失败。message参数是可选的。a

36、ssertSame( String message, expected,actual) 验证 expected参数和 actual参数 所引用的是否为同一对象,如果不是的话,将会失败。Message参数是可选的。assertTrue( String message,boolean condition) 验证给定的二元条件是否为真,如果为假的话,将会失败。Message 参数是可选的。assertFalse( String message,boolean condition) 验证给定的二元条件是否为假 ,如果不为假的话,将会失败。Message 参数是可选的fail( String messa

37、ge) -使测试立即失败,其中message 参数使可选的。 这种断言通常被用于标记某个不应该到达的分支( 例如 , 在一个预期发生的异常之后)第 7 章1. 对测试执行的策略的理解( 两段论和立体作战 , 重在理解 )( 不考 )2. 测试环境的爆炸组合和组合优化 ( 不考 )3. 适用性测试的要素适用性简单说就是容易发现、容易学习和容易使用。全面评估用户界面 ,需要包含七个因素:符合标准和规范、直观性、一致性、灵活性、舒适性( 主要强调界面友好、美观, 如 操作过程顺畅、色彩运用恰当、按钮的立体感以及增加动感等)、正确性、实用性( 考量每一个具体特性对软件是否具有实际价值、是否有助于用户的

38、实际业务需求实现), 这也是适用性依据的标准。4. 什么是回归测试 , 回归测试的理解1) 每当软件发生变化时 , 就必须重新测试原来已经通过测试的区域 , 验证修改的正确性 及其影响 , 即实施回归测试。2) 回归测试的价值在于能够检测到回归缺陷 , 它是一个受控的测试。3) 回归测试方法a. 再测试全部用例,选择测试用例库中的全部测试用例构成回归测试套件。b. 基于风险选择测试,基于一定的风险标准来从测试用例库中构造缩减的回归测试用例套件。C?基于操作剖面选择测试,会优先选择那些最重要或最频繁使用功能所关联的测试用例(如 80-20 原则13中 20 %的重要功能),有助于发现那些对质量有

39、显著影响的缺陷,而放弃次要功能关联的测试用例。 d. 测试修改的部分。4)回归测试的组织和实施a. 通过代码相依分析,识别出软件中被修改的部分和影响的范围。b. 从原有测试用例基线库中,排除不再适用的测试用例,确定那些对新的软件版本依然有效的测试用例,从而建立起新的测试用例基线库T0 。c. 基于操作剖面和风险选择相结合的策略,从新的测试用例基线库中选择测试用例构造有效的套件,测试被修改的软件。d. 如果回归测试套件不能达到所需的覆盖要求,必须补充新的测试用例使覆盖率达到规定的要求,生成新的测试用例集T1,用于测试 T0 无法充分测试的软件部分。e 用 T1 执行修改后的软件。5?缺陷的属性缺

40、陷严重程度缺陷严重等级描述0 级:致命 fatal最严重等级,缺陷导致系统任何一个主要功能完全丧失、用户数据受到破坏,系统崩溃、悬挂、死机等。1 级:严重系统的主要功能部分丧失、数据不能完整保存,系统的次要功能完全丧失,系统所提供ctitical的功能或服务受到明显的影响2 级:一般系统的次要功能没有完全实现,但不影响用户的正常使用。例如提示信息不太准确;或major用户界面差,操作时间稍长等问题3 级:较小操作者不方便或遇到麻烦,但不影响功能的操作和执行,如字体不美观、按钮大小不是minor很合适,文字排列不对齐等些小问题缺陷优先级缺陷优先级描述立即解决( P1 级)缺陷导致系统几乎不能运行

41、、使用,或严重妨碍测试的执行,需立即修正、尽快修正。高优先级( P2 级)缺陷严重,影响测试,需要优先考虑修正。例如不超过24 小时修正。正常排队( p3 级)缺陷需要修正,但可以正常排队等待修正低优先级( P4 级)缺陷可以在开发人员有时间的时候被修正,如果没有时间,可以不修正6?缺陷报告大致包含的内容缺陷的严重性和优先级缺陷的类型和来源缺陷附件完整的缺陷信息列表ID严重程度版本跟踪标题优先级提交时间前提类型修正时间环境缺陷提交人验证时间操作步骤缺陷指定解决人所属项目 /模块 :期望结果来源产品信息实际结果产生原因状态频率构建包跟踪第 8 章*1.国际化测试、本地化测试和全球化测试的定义14

42、1) 国际化指为保证所开发的软件能适应全球市场的本地化工作而不需要对程序做任何系统性或结构性变化的特性,这种特性通过特定的系统设计、程序设计、编码方法来实现。2) 软件本地化是在源语言版本的基础上,通过翻译、定制和参数配置等工作,使软件产品或系统在语言、时区、度量衡、文化、风俗习惯等各个方面与当地国家和地区的相应内容相一致,从而满足特定地区的用户的使用需求。3) 全球化,它是一个概念化产品的过程,是基于全球市场考虑的,以便一个产品只须做较小的改动就可以在世界各地出售。全球化可以看作是国际化和本地化两者合成的结果。*2.国际化测试的基本方法有哪些设计评审和代码审查针对源语言的功能测试,如不同的区域设置、不同的时区显示针对伪翻译( pseudocode

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论