《测试基本流程.pdf》由会员分享,可在线阅读,更多相关《测试基本流程.pdf(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、一、一、测测试工程师岗位职责试工程师岗位职责 目的目的软件测试的目的是为了保证产品的最终质量,在软件开发的过程中,对软件产品进软件测试的目的是为了保证产品的最终质量,在软件开发的过程中,对软件产品进行质量控制,提高软件的可靠性。行质量控制,提高软件的可靠性。的是尽可能发现 bug 并改正被测试软件中的错误,达到期望结果,提高软件开发的可靠性可靠性1.1.制定测试产品的测试计划、方案;制定测试产品的测试计划、方案;2.2.设计并执行测试用例,对产品进行功能,性能,安全等测试;设计并执行测试用例,对产品进行功能,性能,安全等测试;3.3.实施高效的测试活动,并对测试结果进行分析,给出专业报告,与其
2、他部门紧密协作,实施高效的测试活动,并对测试结果进行分析,给出专业报告,与其他部门紧密协作,跟踪缺陷及推动及时修复;跟踪缺陷及推动及时修复;4.4.维护测试环境,进行测试环境的部署与调试;维护测试环境,进行测试环境的部署与调试;5.5.设计并且开发测试工具,对测试方法进行创新;设计并且开发测试工具,对测试方法进行创新;6.6.完成测试项目归纳及总结文档。完成测试项目归纳及总结文档。二、二、测测试在整个项目周期过程中的介入时间和工作内容、重点试在整个项目周期过程中的介入时间和工作内容、重点测试在需求阶段介入测试在需求阶段介入一是测试人员通过一是测试人员通过早期参与,更清楚需求的来源和目的,有利于
3、后期更好的从用户早期参与,更清楚需求的来源和目的,有利于后期更好的从用户的角度开展测试活动;的角度开展测试活动;二是可以为后期设计验收二是可以为后期设计验收测试用例提供很好的分析依据。提供很好的分析依据。测试模型测试模型工作内容:工作内容:和开发和开发 项目项目 产品等沟通产品等沟通1/8测试用例计划测试用例计划测试用例编写测试用例编写执行测试执行测试发现系统中的缺陷发现系统中的缺陷提交到缺陷管理工具提交到缺陷管理工具发布测试报告发布测试报告用户需求文档用户需求文档1.1.bugbug 的等级划分的等级划分A A 致命致命 1 1、由于程序所引起的死机,非法退出由于程序所引起的死机,非法退出2
4、 2、死循环死循环3 3、数据库发生死锁数据库发生死锁4 4、因错误操作导致的程序中断因错误操作导致的程序中断5 5、功能错误(需求未实现)功能错误(需求未实现)6 6、与数据库连接错误与数据库连接错误7 7、数据通讯错误数据通讯错误B B 严重严重1 1、程序错误、程序错误2 2、程序接口错误、程序接口错误3 3、数据库的表、业务规则、缺省值未加完整性等约束条件、数据库的表、业务规则、缺省值未加完整性等约束条件主要功能丧失,严重地影响系统要求或基本功能的实现。主要功能丧失,严重地影响系统要求或基本功能的实现。(重新安装或重新启动该软件(重新安装或重新启动该软件不属于更正办法)不属于更正办法)
5、,须尽快修正,须尽快修正C C 一般性一般性(界面,图片,文字)(界面,图片,文字)1 1、操作界面错误(包括数据窗口内列名定义、含义是否一致)、操作界面错误(包括数据窗口内列名定义、含义是否一致)2 2、打印内容、格式错误打印内容、格式错误3 3、简单的输入限制未放在前台进行控制简单的输入限制未放在前台进行控制4 4、删除操作未给出提示删除操作未给出提示5 5、数据库表中有过多的空字段数据库表中有过多的空字段D D 建议性建议性1 1、界面不规范、界面不规范2 2、辅助说明描述不清楚、辅助说明描述不清楚3 3、输入输出不规范、输入输出不规范2/84 4、长操作未给用户提示、长操作未给用户提示
6、5 5、提示窗口文字未采用行业术语、提示窗口文字未采用行业术语6 6、可输入区域和只读区域没有明显的区分标志、可输入区域和只读区域没有明显的区分标志3.bug3.bug 的状态划分及各状态之间的变换关系的状态划分及各状态之间的变换关系BugBug 的处理流程:的处理流程:发现发现 新建新建 提交提交 修改修改 关闭关闭 重新打开重新打开4.bug4.bug 的提交规范的提交规范BugBug 模板【版本号】标题:模板【版本号】标题:B Bu ug g 的简要描述。一定要能从标题就看出的简要描述。一定要能从标题就看出 B Bu ug g的大的大概意思概意思【详细描述】【详细描述】:B Bu ug
7、g 的的详细描详细描 述述,包括,包括 此此B Bu ug g的重现步骤、具体现象、及可能有的的重现步骤、具体现象、及可能有的影响。如果有必要请添加图片。影响。如果有必要请添加图片。3/8【实际结果】【实际结果】:实际操作步骤的结果:实际操作步骤的结果【期望结果】【期望结果】:此:此 B Bu ug g修复后期望的结果是什么。请务必在明确期望结果的情修复后期望的结果是什么。请务必在明确期望结果的情况下再提交况下再提交 B Bu ug g。【备注】【备注】:有另外需要说明的请在此处记录。该项可以不写。:有另外需要说明的请在此处记录。该项可以不写。5.5.测试的基本思路,如何测试一个产品或者一个功
8、能点。测试的基本思路,如何测试一个产品或者一个功能点。客户需求客户需求确认资源确认资源(机型机型.版本版本)安卓还是苹果安卓还是苹果搭建环境搭建环境测试设施的准备测试设施的准备根据用例执行测试根据用例执行测试测试的方法测试的方法测试流程:测试流程:1.1.需求:理解需求,与客户。架构。项目需求:理解需求,与客户。架构。项目.开发开发.沟通沟通2.2.测试计划:根据需求资源(人力,设备等)测试计划:根据需求资源(人力,设备等)3.3.用例设计:根据需求,功能等设计测试用例)用例设计:根据需求,功能等设计测试用例)4.4.执行测试用例:根据测试用例的步骤执行用例执行测试用例:根据测试用例的步骤执行
9、用例5.5.执行用例的结果:对每个用例的执行情况标注结果(执行用例的结果:对每个用例的执行情况标注结果(pass block failedpass block failed)有有 bugbug 在测试工具中记录,直至验证修改关闭在测试工具中记录,直至验证修改关闭6.6.测试报告的发布测试报告的发布测试申请提交测试申请提交 bugbug解决解决 bugbug验证验证 bugbug关闭关闭 bugbug测试报告测试报告黑盒测试黑盒测试(功能测试也叫数据驱动测试功能测试也叫数据驱动测试)方法方法等价类划分等价类划分,边值分析边值分析 因果图因果图,错误推测错误推测.只有采用穷只有采用穷举输入测试,举
10、输入测试,着眼于程序外部结构着眼于程序外部结构,不考虑内部不考虑内部,针对软件测试针对软件测试.针对软件界面和软件功能进行针对软件界面和软件功能进行测试测试.把所有可能的输入都作为测试情况考虑,才能查出程序中所有的错误。实际上测试情把所有可能的输入都作为测试情况考虑,才能查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进行测试。这样看来,完全测试是不可能的,所以我们要进行有针对性的测试,通过制定测行测试。这样看来,完全测试是不可能的,所以我们要进行有针对性
11、的测试,通过制定测试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。黑盒测试行试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。黑盒测试行为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测试行为具体量化的方为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测试行为具体量化的方法之一。法之一。具体的黑盒测试用例设计方法包括具体的黑盒测试用例设计方法包括写测试用例或在执行测试时都要注意写测试用例或在执行测试时都要注意(等价类划分法等价类划分法 边界值分析法边界值分析法)1、等价类划分法一个有效等价类和两个无效等价类一个有效等价类和两个无效等价类
12、如登陆一个如登陆一个 QQQQ 输入一个正确的帐号输入一个正确的帐号 两个两个(一个账户正确一个账户正确,密码不正确密码不正确.另一个账户密码都不正确。账户错误密码正确另一个账户密码都不正确。账户错误密码正确)然后从划分出的等价类中按以下三个原则设计测试用例:然后从划分出的等价类中按以下三个原则设计测试用例:为每一个等价类规定一个唯一的编号。为每一个等价类规定一个唯一的编号。设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步步.直到所有的有效等价类都被覆盖为止。直到所有的有效等价类都被覆盖为止。4/
13、8设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步.直到所有的无效等价类都被覆盖为止。直到所有的无效等价类都被覆盖为止。2、边界值分析法(一个账户里按规定只能登陆一个账户里按规定只能登陆 1010 个帐号个帐号,但却能登陆但却能登陆 1111个个)大量的错误是发生在输入或输出范围的边界上,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范而不是发生在输入输出范围的内部围的内部.因此针对各因此针对各种边界情况设计测试用例,可以查出更多的错误。种边界情况设计测试用例,可以查出更多的错误。使用边
14、界值分析方法设计测试用例,首先应确定边界情况使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出通常输入和输出等价类的边界,就是应着重测试的边界情况等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。试数据。(2 2)基于边界值分析方法选择测试用例的原则:)基于边界值分析方法选择测试用例的原则:1 1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以)如果输入条件规定了值的范围
15、,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。及刚刚超越这个范围边界的值作为测试输入数据。2 2)如果输入条件规定了值的个数,)如果输入条件规定了值的个数,则用最大个数则用最大个数,最小个数,比最小个数少最小个数,比最小个数少一,比最大个数多一的数作为测试数据。一,比最大个数多一的数作为测试数据。3 3)根据规格说明的每个输出条件,使用前面的原则)根据规格说明的每个输出条件,使用前面的原则 1 1)。)。4 4)根据规格说明的每个输出条件,应用前面的原则)根据规格说明的每个输出条件,应用前面的原则 2 2)。)。5 5)如果程序的规格说明给出的输入域或输出域是
16、有序集合,则应选取集合)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。的第一个元素和最后一个元素作为测试用例。6 6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。边界上的值作为测试用例。7 7)分析规格说明,找出其它可能的边界条件。)分析规格说明,找出其它可能的边界条件。3.3.错误推测法错误推测法错误推测法是基错误推测法是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对于经验和直觉推测程序中所有可能存在的各种错误,从而有针
17、对性的设计测试用例的方法性的设计测试用例的方法4.4.因果图法因果图法5 5、判定表驱动法、判定表驱动法6 6、正交试验设计法、正交试验设计法7 7、功能图法、功能图法8 8、场景法等、场景法等制定测试计划的目的制定测试计划的目的:是确定和描述要实施和执行的测试是确定和描述要实施和执行的测试,这是通过生成包含测试需求和,这是通过生成包含测试需求和测试策略的测试计划来完成的测试策略的测试计划来完成的。测试计划就像一份测试的纲要,起到引导整个测试流程的作用。测试计划就像一份测试的纲要,起到引导整个测试流程的作用。5/8测试用例测试用例:最好一拿到需求就写。在测试之前写最好一拿到需求就写。在测试之前
18、写 要不然等测试后再写用例就没要不然等测试后再写用例就没有效果了有效果了.(.(客户给的需求文档要根据上面的步骤测试客户给的需求文档要根据上面的步骤测试,我们也要根据自己写的测我们也要根据自己写的测试用例进行找试用例进行找 bugbug 发现发现 bug.)bug.)两者都要结合在一起测试两者都要结合在一起测试.一、一、写测试用例?写测试用例?1 1、编写测试用例,可以避免测试点的遗漏、编写测试用例,可以避免测试点的遗漏2 2、测试用例也是为了更好的进行测试,可以提高测试效率、测试用例也是为了更好的进行测试,可以提高测试效率3 3、测试用例是根据需求来的,测试用例是根据需求来的,开发也是根据需
19、求做的,开发也是根据需求做的,测试用例完成后,测试用例完成后,要进行用例评审,要进行用例评审,还可以减少开发和测试对需求的不同理解造成的缺陷还可以减少开发和测试对需求的不同理解造成的缺陷4 4、有时候需求是一点点来的,不是很系统,测试用例及时更新,可以作为系统的需求、有时候需求是一点点来的,不是很系统,测试用例及时更新,可以作为系统的需求二、软件测试用例思路二、软件测试用例思路设计结构清晰、易读、可维护性强设计结构清晰、易读、可维护性强尽可能多的覆盖所有分支尽可能多的覆盖所有分支三、软件测试的测试用例规格三、软件测试的测试用例规格比如一个网页的登录窗口,有要输入用户名,密码等等。这样的一个网页
20、怎么写测试用例比如一个网页的登录窗口,有要输入用户名,密码等等。这样的一个网页怎么写测试用例测试用例编号测试用例编号 规则:编号具有唯一性、易识别性,由数字和字符组合成的字符串规则:编号具有唯一性、易识别性,由数字和字符组合成的字符串 约定:约定:系统测试用例:产品编号系统测试用例:产品编号-ST-ST-系统测试项名系统测试项名-系统测试子项名系统测试子项名-XXX-XXX集成测试用例:产品编号集成测试用例:产品编号-IT-IT-集成测试项名集成测试项名-集成测试子项名集成测试子项名-XXX-XXX单元测试用例:产品编号单元测试用例:产品编号-UT-UT-单元测试项名单元测试项名-单元测试子项
21、名单元测试子项名-XXX-XXX 测试项目测试项目 规则:当前测试用例所属测试大类、被测需求、被测模块、被测单元等规则:当前测试用例所属测试大类、被测需求、被测模块、被测单元等 约定:约定:系统测试用例测试项目:系统测试用例测试项目:软件需求项软件需求项 如:如:测试手机在没有测试手机在没有 SIMSIM 卡的情况下,卡的情况下,可以拨打紧可以拨打紧急电话急电话集成测试用例测试项目:集成后的模块名或接口名集成测试用例测试项目:集成后的模块名或接口名 如:测试模块如:测试模块 A A 提供的文件接口提供的文件接口单元测试用例测试项目:被测试的函数名单元测试用例测试项目:被测试的函数名 如:测试函
22、数如:测试函数 int Read*psz)int Read*psz)测试标题测试标题规则:测试用例的概括简单的描述用例的出发点、关注点,原则上不能重复。规则:测试用例的概括简单的描述用例的出发点、关注点,原则上不能重复。6/8 重要级别重要级别规则规则高:保证系统基本功能、核心业务、重要特性、实际使用频率高的测试用例;高:保证系统基本功能、核心业务、重要特性、实际使用频率高的测试用例;中:重要程度介于高和低之间的测试用例;中:重要程度介于高和低之间的测试用例;低:实际使用频率不高、对系统业务功能影响不大的模块或功能的测试用例。低:实际使用频率不高、对系统业务功能影响不大的模块或功能的测试用例。
23、预置条件预置条件规则:执行当前测试用例需要的前提条件,是后续步骤的先决条件规则:执行当前测试用例需要的前提条件,是后续步骤的先决条件 输入输入规则:用例执行过程中需要加工的外部信息,输入、文件、数据库等规则:用例执行过程中需要加工的外部信息,输入、文件、数据库等 操作步骤操作步骤规则:执行当前测试用例需要经过的操作步骤,保证操作步骤的完整性。规则:执行当前测试用例需要经过的操作步骤,保证操作步骤的完整性。预期输出预期输出规则:当前测试用例的预期输出结果,包括返回值的内容、界面的响应结果、输出结果规则:当前测试用例的预期输出结果,包括返回值的内容、界面的响应结果、输出结果的规则符合度等的规则符合
24、度等注意事项:注意事项:1.1.如果发现如果发现 bugbug 提交给开发,开发称不是提交给开发,开发称不是 bugbug,这种情况可以找项目,这种情况可以找项目2.2.理解需求应在编写测试计划之前理解需求应在编写测试计划之前测试计划就像一份测试的纲要,起到引导整个测试流程的作用。测试计划就像一份测试的纲要,起到引导整个测试流程的作用。测试计划先于测试用例。测试计划先于测试用例。个人认为测试过程:个人认为测试过程:了解项目了解项目编写测试计划编写测试计划理解需求理解需求编写测试用例编写测试用例执行测试用例执行测试用例BUGBUG 的报填及跟踪的报填及跟踪更新测试用例更新测试用例回归测试回归测试
25、编写测试报告编写测试报告理论上来说,如果需求规格说明书够详尽,用例应该完全按照它来完成。但实际工作中,没有一个项目规格会那么详尽完善,基本上的case编写也是在等开发做出一个Demo版本后,7/8自己再根据规格书以及规格评审会议中做的笔录来完成case。之后,等到程序正式进测后,再对照程序修改 case 并不断和开发还有PM 他们进行沟通完善 case。而且,一般的程序开发不同阶段,规格也是在或大或小的改变中,所以,case 不可能一次性定型。实际上,case只能是一个思路的引导,真正发现bug,往往是通过场景发散发现的。case 的步骤一般都是按照程序的主逻辑流程来覆盖的,这样比较全面。Ja
26、va 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems公司于 1995 年 5 月推出的Java 程序设计语言和Java平台(即 JavaSE,JavaEE,JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在 JAVA 中是非的意思,如!=就是不等于,!0 就是非 0,是逻辑用语 if(!0)就是如果真的话非 的意思测试结果 OK、POK、NG、NT 的意义OK-就是 Pass,测试通过的意思;POK-部分
27、通过,表示测试中有很多检查点,比如其中两个检查点通过,一个没有通过,就是 POK;NG-是 Not Good的意思,也可以解释为:NG=Not Go未通过,不同的公司叫法不尽相同,有些公司也叫 Fail;NT-Not T est,表示没有测试,并不是所有的测试用例在每一测试轮次都是需要测试的,没进行测试的就是 NT。作者:以用户的立场想周全、广泛列出测试用例(启动、登录、非法输入、)一、基本功能菜单、界面、功能测试1、登录(空格输入、其它符号输入)2、冲突-(来电、短信、摔)看界面是否有闪屏,卡屏、非法退出3、升级后有没有提示二、考虑(输入数据,显示出来的内容是否与需求一致)三、后台在后台服务器输入内容超出页面,前台能不能显示,后台操作的前台能不能正常显示,反之。8/8