1、UATUAT测试测试UATUAT测试测试1.1.测试目的测试目的2.2.准入规则准入规则3.3.测试基准测试基准4.4.缺陷缺陷分级分级5.5.案例运用案例运用测试目的测试目的 测试目的测试目的4测试目的测试目的第一是确认软件的质量。Do the right thing:确认软件做了业务所期望做的事情-模块 Do it right:确认软件以正确的方式来做了这个事情-流程第二是尽可能多地找出错误,如果一个软件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷。第三给最终用户提供具有一定可信度的质量评价,提高用户满意度。注:UAT主要目的是验证软件是否满足业务需求。应由熟悉业务需
2、求的使用用户来进行评审的。5测试的主要目标和方法测试的主要目标和方法发现缺陷(实施测试来降低可发现的发现缺陷(实施测试来降低可发现的缺陷缺陷)v 正面测试v 反面测试 预防缺陷(通过测试避免使用发生缺陷范围)预防缺陷(通过测试避免使用发生缺陷范围)v 通过测试得到降低软件缺陷注:测试只能证明软件存在缺陷,不能证明软件不存在缺陷测试可以使软件中缺陷降低到一定程度,而不是彻底消灭以较少的用例、时间和人力找出软件中的各种错误和缺陷,以确保软件的质量准入规则准入规则准入准入7准入规则准入规则检查项检查项是否是否通过通过不适不适用用责任方责任方备注备注是否提供了系统名称及版本说明?开发方是否提供了对应的
3、需求规格及业务文档?开发方是否提供了设计文档?开发方是否提供了需求跟踪矩阵?开发方是否进行了开发自测?开发方是否提供了开发自测报告?开发方是否提供了程序清单(包括源码、安装包、数据结构定义文件,数据逻辑图等)?开发方可选,可上线时提供是否提供了系统环境要求及安装说明?开发方可选,可上线时提供是否提供了测试文档及用户操作说明文档?开发方是否提供了维护说明文档?开发方可选,可上线时提供是否提供了回退说明文档?开发方可选,可上线时提供8测试的主要目标和方法测试的主要目标和方法发现缺陷(实施测试来降低可发现的发现缺陷(实施测试来降低可发现的缺陷缺陷)v 正面测试v 反面测试 预防缺陷(通过测试避免使用
4、发生缺陷范围)预防缺陷(通过测试避免使用发生缺陷范围)v 通过测试得到降低软件缺陷注:测试只能证明软件存在缺陷,不能证明软件不存在缺陷测试可以使软件中缺陷降低到一定程度,而不是彻底消灭以较少的用例、时间和人力找出软件中的各种错误和缺陷,以确保软件的质量 测试基准测试基准 基准基准10测试基准测试基准测试过程中把控一下原则测试过程中把控一下原则:1.Good-enough:权衡测试深度-项目进度的原则2.保证测试的覆盖程度,但穷举测试是不可能的3.所有的测试都应追溯到用户需求4.不能为了便于测试擅自修改程序5.既应该测试软件该做什么,也应该测试软件不该做什么 软件测试的具体内容就是进行验证和确认
5、软件测试的具体内容就是进行验证和确认。1.验证软件是否和规定要求相一致;2.通过操作确认软件逻辑的正确性。n 缺陷管理缺陷管理12缺陷管理缺陷管理一、缺陷管理流程13二二、缺陷严重度、缺陷严重度-严重度等级定义严重度等级定义严重度严重度1 1非常严重的缺陷:非常严重的缺陷:产品在正常的运行环境下无法给用户提供服务,或者不能执行正常工作功能或重要功能。或者软件失效会造成人身伤害或危及人身安全。严重度严重度1 1的例子:的例子:软件的意外退出甚至操作系统崩溃,造成数据丢失 系统重启 引起模块之间或者单元之间或者系统之间数据的传输失败 无法提供系统主要的 缺陷管理14二、缺陷严重度二、缺陷严重度-严
6、重度等级定义严重度等级定义严重度严重度22严重度缺陷:严重度缺陷:严重影响了系统提供给用户的服务。严重影响系统要求或者基本功能的实现,且没有办法来减轻这个缺陷的影响。严重度严重度2 2的例子:的例子:系统中的某些模块会重启,但不影响系统数据的处理和传输 用户使用系统提供的功能,有时候会导致系统系统挂起,不影响系统数据处理和功能处理 软件的某个菜单不起作用,或者产生错误的结果 缺陷管理15二、二、缺陷严重度缺陷严重度-严重度等级定义严重度等级定义严重度严重度3 3一般的缺陷:一般的缺陷:系统需要增强的或存在的一些缺陷,担忧相应的补救方法来解决这个缺陷。严重度严重度3 3的例子:的例子:系统的某个
7、模块失效了,但系统没有上报相应的告警 功能特征设计不符合系统的需求,不影响系统的业务,并且有相应的补救方法。本地化软件的某些字符没有翻译或者翻译错误 缺陷管理16二、二、缺陷严重度缺陷严重度-严重度等级定义严重度等级定义严重度严重度4 4轻微的缺陷:轻微的缺陷:细小的问题,不需要补救方法或功能增强的请求。操作不方便或容易使用户误操作,但不影响执行基本功能。严重度严重度4 4的例子:的例子:上报的信息不符合系统的需求,描述不精确或可能对用户有些误导 GUI界面问题,不精确或肯呢个对用户有些歧义 某个空间没有对齐,某个标点符号丢失 缺陷管理17三、缺陷严重度三、缺陷严重度-优先级优先级缺陷优先级缺
8、陷优先级优先级是表示处理和修正软件缺陷的先后顺序的指标,即哪些缺陷需要优先处理,哪些缺陷可以稍微修改。确定缺陷的优先级,更多的是站在软件开发和软件测试的角度来考虑,是个复杂的过程,有时候可能并不是纯技术问题。需要同时考虑修改缺点的难度和存在的风险。优先级也需要考虑缺陷发生的频率,以及对目标客户的影响。严重度和优先级的关系严重度和优先级的关系 缺陷的严重度和优先级是含义不同但相互联系密切的两个概念,从不同的侧面描述了软件缺陷对软件质量、最终用户、开发过程的影响程度和处理方式。一般来说,严重度高度缺陷具有较高的优先级。严重度高说明缺陷对软件造成的质量危害性大,需要优先处理,而严重性低端缺陷可能只是
9、软件不尽善尽美,可以稍后处理。但是优先级和严重度并不总是一一对应的,也存在低优先级、高严重度的缺陷,或者高优先级、低严重度的软件缺陷。缺陷管理18四、缺陷严重度四、缺陷严重度-处理方式处理方式在UAT测试阶段,系统一般不会再发生特别严重的问题,比如系统崩溃等。即使真的发生特别严重的问题,也一般会采用特殊流程进行追踪,以便迅速得以解决。所以,为便于缺陷管理,我们可以简化缺陷严重度划分,将其分为:高(严重)、中(一般)、低(轻微)。严重缺陷严重缺陷系统主要功能未完全实现或者实现方式有误。这类缺陷在UAT阶段应该予以极大重视,并优先得到修复。一般缺陷一般缺陷系统的一些功能在实现上不尽如人意。这类缺陷
10、也较为严重,在条件允许的情况下,要及早修复。轻微缺陷轻微缺陷一般是指与界面相关的一些细微缺陷,如错别字、界面风格和易用性问题等,不会涉及到系统功能,不影响使用,但影响用户体验。这类缺陷不那么严重,但影响感知的应优先处理。如浏览器兼容性问题等,在标准终端标准下可正常使用的,可不用修复。缺陷管理案例运用案例运用案例运用20案例运用案例运用一、测试报告涵盖度不够 测试报告本身问题,常见问题如下:测试用例的结构和层次不清晰;测试用例的重点是否突出,是否抓住新增或修改的功能或系统的薄弱环节,如流程节点控制;测试用例是否覆盖了显式和隐式功能需求;测试用例是否涉及了正常情况和异常情况;测试用例中是否包含测试
11、数据或测试数据规则;测试用例是否描述了前提条件,步骤是否简明清楚;测试步骤是否包含了检查点与预期值;测试用例是否覆盖了所有测试需求,如右图。21案例运用案例运用-WEB测试一、WEB测试1.功能测试Web应用软件的功能测试主要包括表单测试、Cookies测试、设计语言测试、链接测试以及数据库测试等。1)表单测试指的是测试服务器是否能够正常接收和保存用户填写的表单数据以及测试表单信息正确性等内容,测试程序在后台运行时能否正常使用这些表单信息。见反例,流程在反向流转过程中保存提示如下信息,就是单据信息丢失导致。22案例运用案例运用一、WEB测试2)Cookies 测试指的是测试程序的Cookies
12、 能否正常使用,并且对这些加密的信息验证次数累计是否正确;反例,在单据更换人员时未做校验导致。23案例运用案例运用一、WEB测试3)数据库测试,表单数据输入与数据库内信息是否匹配,与表单读取数据库信息是否一字等。例:使用转译字符进行测试,如“,/n”等字符处理,查看转译是否正常,右图反例,出现特殊字符:4)各模块可用测试,包括各模块导航,界面显示,内容显示,图形显示。主要看模块功能是否正常,显示是否符合预期。24案例运用案例运用一、WEB测试5)兼容性测试,测试WEB应用在与不同操作系统、浏览器、打印机等进行兼容测试,测试应用的健壮性。重点测试IE兼容性。6)接口测试除测试各接口链接情况,更应
13、侧重测试软件遇到接口错误是否有错误处理能力。25案例运用案例运用二、APP测试1)测试APP安装、运行、卸载,最好在多个主流实体终端测试,其余模拟终端测试。测试关注点:安装是否正常;软件是否能够正常运行;安装中途是否可以进行取消安装操作、当安装空间不足时是否有相应的提示信息等内容。直接卸载程序时是否有提示信息、卸载后安装的文件夹及文件是否被全部删除;是否可以取消已经进行的卸载操作,以及直接删除安装文件夹是否有提示信息等内容。26案例运用案例运用二、APP测试2)功能测试,验证APP 的各个功能是否准确实现。测试关注点:运行,比照web功能进行对比;前后台切换,查看切换情况;免登录时使用情况跟踪
14、;测试时考虑等价类划分、边界值分析、场景回滚、关联测试等测试类型对其进行全面覆盖。27案例运用案例运用二、APP测试3)UI 测试,也叫用户界面测试,关注人机交互界面。用户交互部分一般是指菜单、对话框、按钮等控件和可见外观,如友好的用户界面、人性化的页面布局、易操作的功能按钮。4)交叉事件测试,又叫事件或者冲突测试,它是指一个APP 程序正在执行过程中,同时另外一个事件或操作对该过程进行干扰的一种测试。关注的几个方面:多个APP 同时运行时,是否会影响终端正常功能的使用。APP 运行时,前台后台切换的时候是否影响功能的正常使用。APP 运行时,是否可以正常接听或拨打电话,或者可以正常接收或发送
15、短信。在移动智能终端上运行APP 时,是否会影响其他应用的使用。例如能否查看新的QQ 消息、微信消息等信息。28事实上,测试活动的结束与否并不完全依赖于准出检查单中的所有项目是否都已通过。还应当参考项目的预期和项目本身等因素。比如当前的结果已经达到成果预期,或者继续进行测试活动会严重超出进度计划时,测试活动都应该终止。否则,就违背了引进测试的初衷。通过测试,能有效地降低产品风险,甚至使产品质量达到最优。但无限制地依赖测试也是不可取的。我们应该综合考量项目预算、测试成果预期和实际执行情况等因素,在合适的时候果断结束测试。后记29测试管理测试管理 0101功能测试准入审核功能测试准入审核 0202功能测试案例功能测试案例 0303测试执行测试执行 0404测试准出测试准出谢谢!