《Web测试V1.1幻灯片》由会员分享,可在线阅读,更多相关《Web测试V1.1幻灯片(52页珍藏版)》请在金锄头文库上搜索。
1、软件测试第6章 Web测试,范围与目标,2,课程目标:了解Web的测试的分类掌握Web相关的测试知识掌握Web测试用例的设计方法,本章内容,6.1 WEB网站的特性6.2 Web测试设计,Web应用程序原理,Web页面特点,Web 是图形化的:图形、音频、视频 Web 是易于导航的:链接、跳转、Go Web 与平台无关 : browser + Internet Web 是分布式的 :baidu、google、sohu Web 是动态的:天气、新闻、八卦娱乐 Web 是交互的:注册、登陆、发帖,WEB网站的特点,1.网络集约性2.内容驱动性3.持续演化性4.即时性5.安全性6.美观性,1.网络集
2、约性,就本质而言,一个Web网站是网络集约的。它可以驻留在网络上,并且服务于变化多样的客户群的需要。例如时下流行的门户网站或者网络游戏。它们都可以看成一个完善的大型Web应用系统,服务于各种客户群,但其本身只需要一个服务器端,用各式各样的客户端满足不同要求的客户。,2.内容驱动性,一般来说,Web网站不是为了某个或某些特定用户量身定做的,它们一般都拥有一个广大的服务群体,其服务的内容,往往由这些群体的要求所决定。在大多数情况下,一个Web网站的主要功能是使用HTML(超文本标记语言)javascript等语言来表示文本、图形、音频、视频内容给终端用户。,3.持续演化性,不同于传统的、按一系列规
3、律发布进行演化的应用软件(如微软每隔1-2年发布新的Office办公软件),Web网站一般是采取持续演化的模式。对于某些Web应用而言,按小时为单位进行更新都是司空见惯的。,4.即时性,Web网站具有其他任何软件类型中都没有的即时性,或者称为快速性。对于某些较大规模的Web网站,开发时间往往也只有几周或者几天,适度复杂的Web页面可以仅在几小时内完成。这要求开发者必须十分熟练于开发Web应用所需的压缩时间进度的规划、分析、实现以及测试方法。,5.安全性,Web网站通过网络访问,为了提高系统效率,需要限制访问终端的用户的数量。为了保护敏感内容,必须提供安全的数据传输模式。因此要求Web网站必须有
4、一定的安全性保障。,6.美观性,良好的观感会使一个Web网站锦上添花。在某种应用已经被市场广泛接受或者定义为标准时,美观性可能和技术在同样程度上影响该应用的成功。,从Web特点到Web测试,易于导航,动态的,分布式,交互的,会话,更新,资源,兼容,平台无关,表单测试,接口测试,平台测试,链接测试,安全性测试,数据库测试,SSL测试,浏览器测试,导航测试,Cookies测试,Web测试框架分类,客户端测试,服务端测试,系统架构,质量特性,功能测试,性能测试,安全性测试,兼容性测试,易用性测试,应用功能测试,系统职能,数据库服务测试,应用服务测试,安全系统测试,Web测试框架示意图,数据库测试设计
5、语言状态保持: Session 、Cache 、Cookies表单与数据校验 链接测试,防DOS攻击日志文件登录 SSL目录设置,整体界面测试内容测试图形测试导航测试,压力测试负载测试链接速度测试,网络环境WEB服务器分辨率打印机浏览器操作系统,6.2 Web测试用例设计,16,Web功能性测试用例设计Web性能测试用例设计Web易用性测试用例设计Web兼容性测试用例设计Web安全性测试用例设计,1、Web功能性用例分类:,链接测试表单与数据校验测试状态保存测试SessionCacheCookies数据库操作测试,链接测试,链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些
6、不知道地址的页面的主要手段。按链接的表现形式分:文字、图像、图标、按钮等按链接的编写方式分:静态链接、动态生成的链接、自动跳转的链接等按链接的类型分:HTTP、FTP、news、Gopher等按链接的地址所在分:内部链接、外部链接等按链接的打开方式分:在框架内打开、刷新页面、新开窗口、新开模式窗口等,链接测试用例设计,用例设计思想:首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在; 最后,保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。链接的显示链接跳转的结果链接访问的页面是否存在是否有孤立的页
7、面存在自动化的链接检测工具Xenu Link SleuthHTML Link Validator Web Link Validator,链接测试工具Xenu Link Sleuth,你可以打开一个本地网页文件来检查它的链接,也可以输入任何网址来检查。它可以分别列出网站的活链接以及死链接,连转向链接它都分析得一清二楚;它支持多线程,可以检查结果存储成文本文件或网页文件。Xenu无需安装,支持asp、do、jsp等结尾的网页,同时能够生成html格式的测试报告。,链接测试工具HTML Link Validator,该工具软件可以检查Web中的链接情况,看看是否有无法连接内容。可以在很短时间内检查数
8、千个文件,只需用鼠标双击放有网页的文件夹就能开始检查。可以标记错误链接的文件很方便的显示链接使用者也可以编辑这些资料。HTML Link Validater只能测试以Html或者htm结尾的网页链接。,表单与数据校验,表单,在网页中经常使用,主要负责数据采集的功能,比如你可以采集访问者的名字和E_mail地址、调查表、留言簿等等。一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法。(form/form) 表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框、网格Grid等。 表单按钮:包括提交按钮
9、、复位按钮和一般按钮;用于将数据传送到服务器上的CGI脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。,表单与数据校验测试用例设计,用例设计思想:应尽量利用测试用例设计的方法:边界值分析、等价类划分等显示:加载、缺省值、快捷方式、提示信息等单个控件:文本框、下拉列表、文件上传、日期框、检查框 、滚动条、网格、ActiveX控件等组合控件:几个下拉框、日期范围等工具:QTP,Winrunner,Robotform,Session测试及用例设计,含义:指一类用来在客户端与服务器端之间保持状态的解决方案。 Session,中文经常翻译为会话,其本来的含义是指有始有终的一系列动作
10、/消息,比如打电话是从拿起电话拨号到挂断电话这中间的一系列过程可以称之为一个Session 用例设计思想:登录后的权限注销后的再次登录Session超时一终端多用户和多终端一用户等,Cookies测试及用例设计,含义: 一种能够让网站服务器把少量数据储存到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术。作用:用于自动登录用例设计思想:Cookies的加密自动登录失效时间更改密码等,Cookies Manager,Cookie是存在于您硬盘里的小文件,只要是您浏览过的网站,大都会留下这样的文件在您的电脑里头,当您再次光临该网站时,该网站就会立刻辨认您的身份,加快您进入的速度。而有些网站
11、甚至可以很聪明的进入之前所浏览的网页中,充分做到个人化的服务。因为它记录了您的一些资料,可以用Cookies Manager帮您管理Cookie。,Cookie测试用例设计,Cache测试及用例设计,含义:Cache即高速缓冲存储器(Cache Memory),用来保存浏览过页面的一种机制。在WEB应用中,缓存机制也是相当重要的。比如你打开IE,第一次打开是很慢的,但是关闭后马上再打开就快很多,这是因为这时数据还没被系统“请”出内存,系统从内存中直接取得数据自然快了Cache的作用就是缓存浏览过的页面,图片等,比如刚刚看过A页面了,现在看的B页面,如果还想看A页面,直接点后退,A页面就可以从C
12、ache中装入,而不用再连接网络下载了。用例设计思想:缓存是否起作用数据修改后是否能及时刷新缓存失效时间是否正确,数据库测试,在Web应用技术中,数据库起着重要的作用,数据库为Web应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。在Web应用中,最常用的数据库类型是关系型数据库,可以使用SQL对信息进行处理。 在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。,数据库测试用例设计,用例设计思想:
13、增加、修改、查询数据,注意会造成字段约束、默认值、重复数据等问题注意删除数据的关联情况数据的并发访问冲突数据库的压力测试数据库的备份恢复问题小贴士:最好使用真实数据测试,2、Web性能测试,连接速度测试 用户连接到Web应用系统的速度根据上网方式的变化而变化,他们或许是电话拨号,或是宽带上网。当下载一个程序时,用户可以等较长的时间,但如果仅仅访问一个页面就不会这样。如果Web系统响应时间太长(例如超过5秒钟),用户就会因没有耐心等待而离开。 另外,有些页面有超时的限制,如果响应速度太慢,用户可能还没来得及浏览内容,就需要重新登陆了。而且,连接速度太慢,还可能引起数据丢失,使用户得不到真实的页面
14、。,负载测试,负载测试 负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。例如:Web应用系统能允许多少个用户同时在线?如果超过了这个数量,会出现什么现象?Web应用系统能否处理大量用户对同一个页面的请求?,压力测试,压力测试 负载测试应该安排在Web系统发布以后,在实际的网络环境中进行测试。因为一个企业内部员工,特别是项目组人员总是有限的,而一个Web系统能同时处理的请求数量将远远超出这个限度,所以,只有放在Internet上,接受负载测试,其结果才是正确可信的。 进行压
15、力测试是指实际破坏一个Web应用系统,测试系统的反映。压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。黑客常常提供错误的数据负载,直到Web应用系统崩溃,接着当系统重新启动时获得存取权。 压力测试的区域包括表单、登陆和其他信息传输页面等,性能测试用例设计,范围:大部分性能测试都是和WEB相关的。过程:收集性能测试需求-制定测试计划-设计与开发测 试用例、脚本-测试执行与监控-分析测试结果-编写测试报告关注:服务器CPU、内存、硬盘、数据库、中间件、WEB服务器、网络、客户端处理等工具:LoadRunner、 WebLoad、自己开发,3、Web易
16、用性测试,“易用性”是一个衡量标准,用来衡量使用一个产品完成指定任务的难易程度。“易用性Usability(又被译为可用性)”这个词在软件开发中表现为这样一种方式,即把用户而非系统置于开发过程的中心。这种被称为“以用户为中心进行设计”的概念,是指从设计过程的开端便把用户所关注的东西包含于其中,并规定用户应该是任何设计决定中最重要的因素。,易用性测试用例设计,导航-我可以很容易找到在哪帮助和支持-当我需要时我能得到帮助工作流支持-我可以按照自己的方式完成错误处理-错误很难产生,并容易修正一致性-我不需要学习新的技巧反馈信息-我知道系统在做什么功能性-系统能作我期望的工作控制-系统交互在我的控制中视觉清晰-如果有疑问,它就不应该出现语言-我能了解我所读到的,