《测试技术与应用》PPT课件.ppt

上传人:tia****nde 文档编号:11509943 上传时间:2020-04-26 格式:PPT 页数:49 大小:207KB
返回 下载 相关 举报
《测试技术与应用》PPT课件.ppt_第1页
第1页 / 共49页
《测试技术与应用》PPT课件.ppt_第2页
第2页 / 共49页
《测试技术与应用》PPT课件.ppt_第3页
第3页 / 共49页
点击查看更多>>
资源描述
1,软件测试技术,2,第五章测试技术与应用,5.1系统测试技术5.2测试技巧5.3Web系统测试要点,3,5.1系统测试技术,系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不相符合或与之矛盾的地方。系统测试的对象不仅仅包括需要测试的产品系统的软件,还要包含软件所依赖的硬件、外设等。系统测试最重要的是功能测试和性能测试。除了功能测试和性能测试,在系统测试过程中,还有可能进行一些其它的测试工作,例如:兼容性测试、可用性测试、安全测试、安装测试。,4,5.1.1功能测试,功能测试的目的是保证软件的功能符合软件需求,是各种测试的基础和起点。功能测试的依据是需求文档。功能测试的基本方法是构造一些合理输入,检查输出是否与期望的相同。功能测试一般以黑盒测试的方式进行,通常采用等价类划分和边界值分析方法。,5,在进行功能测试时,需要把输入分为典型值、边界值和异常值来处理。在进行功能测试时,测试人员往往需要了解该软件的行业背景。,6,5.1.2错误处理测试,健壮性是软件质量的一个重要因素。错误处理测试是检查软件在面对错误时,是否进行了正确的处理。错误测试的目的是要发现软件是否做了用户不期望的事情、发现软件在发生异常的时候是否有能力进行处理。测试人员需要以否定的态度来思考问题。在错误处理测试中发现的部分问题可能不会被修复。,7,典型的异常情况:用户输入非法数据在系统不支持的平台上运行网络连接异常数据文件(或者数据库)被破坏,数据文件(数据库)中有混乱的数据计算机断电后启动在用户界面上的违反操作步骤的操作,8,非法的数据主要包括:不输入数据输入无效数字数据,如负数和字母数字串输入任何被认为是非法的数据类型格式尝试不常用的数据组合确保使用零值输入超过或者短于要求长度的数据,9,破坏环境的测试包括:异常中断应用程序断开电缆连接软件运行过程中,关闭计算机电源,10,5.1.3内存泄露测试,内存泄漏是一种典型的程序缺陷,导致应用程序不断消耗系统内存(或虚拟存储器),使程序运行出现响应变慢、某些功能无法实现,甚至整个系统瘫痪等问题。在某些语言(如C/C+语言)编写的程序中,内存泄露是一个极其普遍的问题。内存泄露测试可采用静态测试和动态测试技术。Compuware公司的BoundChecker,Rational的Purify就是一种典型的内存泄露检查工具。,11,5.1.4用户界面测试,图形用户界面测试和评估的重点是正确性、易用性和视觉效果。界面中的文字检查和拼写检查也是用户界面测试的重要环节。用户界面测试的过程中,有时要依赖于测试人员的主观判断。,12,用户界面测试的基本原则:易用性原则规范性原则合理性原则美观与协调性原则菜单位置原则独特性原则快捷方式的组合原则排错性考虑原则多窗口的应用与系统资源原则,13,用户界面测试用例,14,15,16,5.1.5性能测试,性能测试包含并发性能测试、强度测试、破坏性测试等。并发性能测试是评估系统交易或业务在渐增式并发情况下处理瓶颈以及能够接收业务的性能过程。强度测试是在资源情况低的情况下,找出因资源不足或资源争用而导致的错误。破坏性测试重点关注超出系统正常负荷若干倍的情况下,错误出现状态和出现比率以及错误的恢复能力。,17,性能测试可以通过黑盒测试或者白盒测试方法来进行。,何时需要性能测试?,18,软件中某个模块涉及到复杂的计算,特别是一些基于人工智能的分析涉及到大量数据的读写、通讯涉及到数据检索,而被检索的数据,具有很大的数据量具有多个并发用户软件在运行时,可用资源(特别是CPU和内存)可能在某些情况下很紧张。例如一些嵌入式系统软件,19,如何进行性能测试?,20,性能测试步骤:确定明确的测试目标测试需求分析:主要目的是挖掘出可能造成系统瓶颈的因素测试用例设计脚本开发数据的准备以及测试执行与监控测试分析,21,项目背景:公司的客户信息系统,主要完成录入、修改以及查询全球客户的信息,并将客户信息转入到业务系统。,性能测试分析,22,性能测试分析,确定测试目标在相同系统环境配置下30个并发用户在15秒钟内完成各类在线操作。测试需求分析应用配置需求:例如应用整体框架、涉及到哪些第三方的组件、应用层与数据库层的接口、使用了什么数据库等。系统配置需求:例如用户客户端配置、客户端与服务器端的网络配置、应用服务器或数据库服务器操作系统等。用户使用情况需求:例如用户分布情况;哪些模块用户使用比较频繁;在用户操作的数据有哪些特点等。,23,测试需求如下:WebServerIplanet6.5第三方组件ORMTool:hiberate数据库Sybase12.5用户分布亚洲、欧洲、北美模块使用情况:录入新客户信息、修改客户信息以及很多客户查询数据量情况:70%的客户资料比较少,有30%的客户是1012点(都按照北京时间计算),这些较复杂。用户操作情况:上午910点、下午45点以及晚上1012点(都按照北京时间计算)这些时刻比较频繁网络配置通过专网(带宽在130M,24,3测试用例设计:主要是根据测试需求分析的结果制定出在测试执行时系统的执行方法。应考虑以下问题:虚拟用户的操作步骤要尽量类似于真实用户的操作。操作的数据要类同于真实用户实际使用数据,例如在用户录入客户信息时,根据需求得到的结果,可以设计有34个虚拟用户在录入一些小客户的信息,12个虚拟用户在录入大客户的信息等。在设计时要充分考虑到需求中用户对模块的使用频率。使得在模拟时每个模块使用情况尽量地类似于真实环境。,25,4脚本开发数据的准备以及测试执行与监控数据准备一定要关注数据的质量和数量,不要出现一些不符合业务逻辑的废数据,并且数据量要满足测试运行的需要。例如测试需要100组数据,但是实际只准备了50组,从而导致测试执行结果出现大的偏差。在此过程中如果有测试工具能够满足测试要求,那么应尽量使用测试工具,5测试分析测试分析的主要目的是要根据测试执行获取到的数据去判断造成系统出现瓶颈的位置,挖掘造成系统瓶颈的真正原因。尽量使用一些比较成熟的工具协助分析工作,这样将大大减轻工作负担。在确定出真正的性能瓶颈时,可以做一些小的测试模型去做验证,确定分析的正确性。,26,5.1.6安全测试,系统环境安全包括了物理设备安全和软件安全。安全测试的目的是为了发现软件中存在的安全漏洞。安全测试重点:分析系统的安全隐患,为非法入侵设立目标,例如盗窃某个文件、修改用户权限、更改数据库记录等。,27,安全需要测试人员有足够的能力去分析系统的安全隐患,安全性测试用例的参考模板,28,5.1.7压力测试,压力测试也叫负荷测试,即获取系统能正常运行的极限状态。压力测试用于检查软件在面对大数据量时是否可以正常运行。大数据量,往往是发生概率比较小的情况。压力测试所涉及的方面主要包括:数据库大小、磁盘空间、可用内存空间、数据通信量。,29,压力测试用例的参考模板,30,5.1.8安装与卸载测试,安装测试应该考虑以下方面:测试各种不同的安装组合,并验证各种不同组合的正确性安装退出之后,确认应用程序可以正确启动、运行。在安装之前备份注册表,安装之后,察看注册表中是否有多余的垃圾信息。至少要在一台笔记本上进行安装测试安装完成之后,可以在简单地使用之后再执行卸载操作对于客户服务器模式的应用系统,可以先安装客户端,然后安装服务器端,测试是否会出现问题。考察安装该系统是否对其他的应用程序造成影响,31,5.1.9升级测试,升级测试包括两个方面:软件本身的升级;软件运行环境升级。软件的升级测试需要对软件重新进行功能、性能等方面的测试工作。,32,5.1.10兼容性测试,兼容性测试是为了检验程序与很多可能的硬件和系统软件配置之间的兼容情况。在进行兼容性测试时,需要得到一份软件的兼容性列表,主要考虑:,操作系统兼容性浏览器兼容性其它的软件兼容硬件兼容带宽限制/网络环境兼容性,33,5.1.11冒烟测试,冒烟测试(SmokeTesting)的目的是检查版本的基本功能。冒烟测试所进行的是一系列对于该软件比较核心的测试,一般从测试用例中选择一部分核心的作为冒烟测试时所使用的测试用例。,34,5.1.12文档测试,文档测试主要对产品手册、用户手册、帮助文件等技术文档进行测试。文档测试中常见错误:,文字错误、语法错误、拼写错误所描述的操作步骤有遗漏所描述的功能或者操作步骤错误,35,5.2测试技巧,植入缺陷,就是在测试前向程序中植入一些缺陷植入缺陷的目的是为了估计软件中还有多少剩余的缺陷。假设植入缺陷的数目是Ns,通过测试,发现了n1个植入的缺陷,发现了n2个软件固有的缺陷,那么,软件中固有缺陷的估算值(N0)为:N0=n2*Ns/n1软件中残余缺陷的估算值则为:N0n2,5.2.1植入缺陷,36,回归测试是指对某些已经被测试过的内容进行重新测试。,5.2.2回归测试,软件增加后影响软件的结构。软件修改考虑不周,引入问题。,为何需要回归测试?,37,每改动一次都需要回归测试?,测试人员可以按照实际情况选择回归策略:每两周需要进行一次完整的回归测试当修复的缺陷数量累计到50个时,进行一次完整的回归测试在产品递交用户前5个工作日,进行完成的回归测试,回归测试通常可以使用自动化测试工具。,38,5.3Web系统测试要点,Web应用系统的测试重点:性能、兼容性、安全性、正确性。Web应用系统可以分为服务器端测试和客户端测试两个部分。服务端重点需要进行的测试内容:性能测试、负载测试和安全测试。客户端重点需要进行的是兼容性测试。Web应用系统在进行负载测试时,通常主要关注:并发用户数量、吞吐量,39,Web系统测试实例,项目背景:某官方网站进行的系统级的测试。项目需求:主要功能包括相关信息的收集、发布以及与广大互联网用户之间的信息交互。系统共由内容管理、WebGuard网页防篡改、客户关系、全文检索、方案征集、嘉宾聊天、XX人才、通用留言板、索票、网上投票、文字直播、内容过滤、咨询等13个子系统组成。其中内容管理、WebGuard网页防篡改、全文检索、内容过滤这四个子系统,面向后台管理用户,均采用C/S架构。其余子系统采用B/S架构。各子系统分别部署在windows和Linux操作平台上。,40,项目环境要求:(C/S),41,42,测试要点分析:从功能测试的角度来说,不但需要检查和验证系统是否按照设计的要求实现了各项功能,而且还要测试系统在不同类型的浏览器端的显示是否合适。Web系统对于用户界面(也就是页面)的要求也远远超过了传统的C/S架构的软件,更加关注页面的视觉效果,因此,Web页面设计是否合理,风格是否统一,是否方便用户浏览也是功能测试需要关注的一个方面。从性能测试的角度来说,Web系统将所有的功能操作均尽可能的放在后台的服务器端进行处理,这使得服务器端的性能至关重要,这也是系统是否会产生性能瓶颈的一个关键所在。Web系统受其自身事务处理模式所决定,浏览器端必须通过网络,很多时候是通过公众互联网,与服务器端进行数据的传递与交互。这就使得对数据进行加密保护,防止信息在传输过程中泄露,成为了当务之急;同时面向广大外部用户的Web系统,极易受到来自网络上的攻击,系统一旦出现安全漏洞,就很有可能被外来者利用,因此,Web系统(尤其是电子商务系统)对安全的要求,远比一般系统要高。对Web系统的安全性测试,也将重点围绕这两点展开。,43,测试内容功能测试性能测试安全性测试兼容性测试,44,功能测试页面链接测试表单测试Cookies测试内容测试整体界面测试功能验证测试,45,性能测试并发性测试服务器性能监测,46,并发性测试并发浏览测试并发查询测试并发注册测试并发登录测试文字直播并发测试通用留言板并发测试咨询系统并发测试方案征集并发测试,47,运行状态监测:监测相关服务器的以下性能指标cpu内存使用情况磁盘读写特定应用系统的检测(oracle),网络监测:监测相关服务器的以下性能指标最大利用率平均帧速帧的平均长度帧总数字节总数冲突总数,48,安全性测试应用层缓冲区溢出(压力测试);cookie安全使用状况评估;跨站脚本攻击风险评估;页面隐藏参数域篡改风险评估;系统隐蔽指令执行风险评估;第三方误配置安全隐患;各类型已知安全漏洞;URL参数篡改攻击风险评估;后门程序和调试选项遗留隐患;WEB内容强迫浏览问题。,49,兼容性测试平台兼容性测试:Windwos98、Windwos2000、WindwosXP、Windwos2003和Linux。浏览器兼容性测试:浏览器是Web客户端最核心的构件,测试来自不同厂商的浏览器对Java、JavaScript、ActiveX、plug-ins或不同的HTML规格的支持。,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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