版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第九章Web网站测试福州软件职业技术学院林风人2015年9月本章重点Web网站测试功能测试性能测试安全性测试可用性/可靠性测试配置和兼容性测试数据库测试
Web网站测试是面向因特网Web页面的测试。众所周知,因特网网页是由文字、图形、声音、视频和超级链接等组成的文档。网络客户端用户通过在浏览器中的操作,搜索浏览所需要的信息资源。
针对Web网站这一特定类型软件的测试,包含了许多测试技术,如功能测试、压力/负载测试、配置测试、兼容性测试、安全性测试等。黑盒测试、白盒测试、静态测试和动态测试都有可能被采用。3本章概述1.1Web网站的测试41.1Web网站的测试包含内容功能测试性能测试安全性测试可用性/易用性测试配置和兼容性测试代码合法性测试完成测试1.2功能测试
功能测试的主要依据是《需求规格说明书》及《详细设计说明书》。
功能测试主要包括以下几个方面的内容:内容测试链接测试表单测试数据校验Cookies测试设计语言测试5
1.2.1页面内容测试正确性信息是真实可靠的还是胡编乱造的。准确性网页文字表述是否符合语法逻辑或者是否有拼写错误。相关性能否在当前页面内可以找到与当前浏览信息相关的信息列表或入口,也就是一般Web站点中所谓的“相关文章列表”。61.2.1页面内容测试7页面文本测试还包括文字标签的测试,他为网页上的图片提供特征描述。1.2.1页面内容测试8测试用例号操作描述数据期望结果实际结果9.1搜索某种类别的商品搜索类别=电脑配件搜索结果中列出该类别的所有商品一致/不一致9.2让鼠标滑过每一个对象受测对象=当鼠标滑过每一个对象时,显示相应的文本信息不一致表9-1页面内容测试用例示例1.2.2页面链接测试9链接测试需要验证三个方面的问题:用户单击链接是否可以顺利地打开所要浏览的内容,即链接是否按照指示的那样确实链接到了要链接的页面。所要链接的页面是否存在。实际上,好多不规范的小型站点,其内部链接都是空的,这让浏览者感觉很不好保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。1.2.2页面链接测试10链接测试必须在集成测试阶段完成,也就是说,在整个Web应用系统的所有页面开发完成之后进行链接测试。目前链接测试采用自动检测网站链接的软件来进行,已经有许多自动测试工具可以采用。如XenuLinkSleuth,主要测试链接的正确性,但是对于动态生成的页面的测试会出现一些错误。1.2.3表单测试11什么是表单?表单就是一些需要在线显示和填写的表格。表单有一些标准操作,如确认、保存、提交等。1.2.3表单测试12表单测试主要考虑以下几个方面:表单提交应模拟用户提交,验证是否完成功能,如注册信息。必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等使用表单收集配送信息时,应确保程序能够正确处理这些数据。要验证数据的正确性和异常情况的处理能力等,注意是否符合易用性的要求。在测试表单时,会涉及数据校验问题。1.2.3表单测试用例13测试用例号操作描述数据期望结果实际结果9.3使用Tab键从一个字段区跳到下一个字段区开始字段区=字段按正确的顺序移动一致/不一致9.4输入字段所能接受的最长的字符串字段名=
字符串=字段区能够接受输入一致/不一致9.5输入超出字段所能接受的最长的字符串字段名=
字符串=字段区拒绝接受输入的字符一致/不一致1.2.4数据校验14目的:根据业务规则,需要对用户输入进行校验,则要保证这些校验功能正常工作。1.2.4数据校验15例子:省份的字符可以用一个有效列表进行校验。需要验证列表完整性;程序是否正确调用了该列表;列表操作是否正确,如在列表中添加一个测试值。数据校验测试和表单测试可能会有一些重复。1.2.5Cookies测试16什么是Cookies?
cookie是一个由网页服务器放在您硬盘上的非常小的文本文件。它本质上就像您的身份证明一样,并且不能像代码那样被执行或被用来散布病毒。它只能被您使用并且只能由提供的服务器读取。1.2.5Cookies测试17使用Cookie的目的?如果您自定义页面,或注册产品或服务。cookie记住您的身份。当下一次您再次访问的时候,将显示您需要的信息,将帮您填入如何您已经回答过的问题。1.2.5Cookies测试18Cookies通常用来存储用户信息和用户在某些应用系统上的操作序列,当一个用户使用Cookies访问了某一个应用系统时,Web服务器将发送关于用户的信息,并把该信息以Cookies的形式存储在客户端的计算机上,这可用来创建动态和自定义页面或者存储登录等信息。1.2.5Cookies测试19测试内容?Cookies是否能正常工作;Cookies是否按预定的时间进行保存;刷新对Cookies有什么影响等。1.2.5Cookies测试20举例:如果在Cookies中保存了注册信息,应确认该cookie能够正常工作而且已对这些信息进行加密如果使用cookie来统计次数,需要验证次数累计正确。可以使用一些Cookie测试工具帮助进行测试,比如CookieEditor、IECookiesView等。1.2.5Cookies测试21测试用例:表9-3Cookies测试用例示例测试用例号操作描述数据期望结果实际结果9.6测试Cookies打开和关闭状态Web网页=Cookies在打开时是否起作用一致/不一致1.2.6设计语言测试22不同的Web设计语言版本的差异可以引起客户端或服务端严重的问题;尤其在分布式环境开放时,开发人员都不在一起,这个问题就显得尤为重要。测试的语言,除了HTML的版本问题外、不同的脚本语言,例如使用JAVA、JavaScript、ActiveX、VBScript或Perl等开发的应用程序也要在不同的版本上进行验证。
1.2.7功能测试用例22测试用例号操作描述数据期望结果实际结果9.71、进入商品目录列表所在页面
2、选择若干商品并将它们添加到购物车中
3、查看购物车添加的商品=
购物车=
页面=购物车中列出所有选择的商品一致/不一致9.81、通过搜索,选择不同页面中的商品,添加到购物车中
2、查看购物车添加的商品=
购物车=
搜索的关键字=
页面=购物车中列出所有选择的商品一致/不一致1.3性能测试
性能测试是为获取或验证系统性能指标而进行测试。多数情况下,性能测试会在不同负载情况下进行。
231.3性能测试包括以下内容:压力测试;链接速度测试;负载测试。231.3.1压力测试Web服务的特点:Web服务处于分布式计算的核心位置,它们之间的交互通常很难测试。分布式开发可以使Web服务的开发变得越来越容易隐藏错误。压力测试是检测这类代码错误的一种有效方法。241.3.1压力测试什么是压力测试?
进行压力测试是指实际破坏一个Web应用系统,测试系统的反应。281.3.1压力测试如何做压力测试?
在设计对Web服务进行压力测试的测试系统时,要让它们以某种特定的方式运行代码,这种做法超越了功能验证。具体的说,通常使用自动化测试工具对系统进行压力测试。291.3.1压力测试压力测试的目的:压力测试目的是要弄清楚被测试的Web服务是不是不仅能做我们认为它能做的事,而且在被施加了某种高强度压力的情况下仍然继续正常运行。301.3.1压力测试压力测试的内容:重复(Repetition)测试的重复就是一遍一遍地执行某个操作或功能。比如重复调用一个Web服务,确定一个操作能否正常执行,并且能否继续在每次执行时都正常。区域包括表单、登录和其他信息传输页面。311.3.1压力测试压力测试的内容:并发(Concurrency)并发是同时执行多个操作的行为。换句话说,就是在同一时间执行多个测试,例如在同一个服务器上同时调用许多Web服务。321.3.1压力测试压力测试的内容:量级(Magnitude)压力测试系统应该应用于产品的另一个条件,需要考虑每个操作中的负载量,即也要尽量给产品增加负担。例如,改变数据的大小、改变时间延迟的长度、资金数量的转移、输入速度以及输入的变化等。331.3.1压力测试压力测试的内容:随机应变:任何压力系统都多多少少具有一些随机性。随机使用前面的压力原则中介绍的无数变化形式,就能够在每次测试运行时应用许多不同的代码路径。341.3.1压力测试压力测试用例参考模板351.被测试对象的介绍2.测试范围与目的3.测试环境与测试辅助工具的描述4.测试驱动程序的设计5.压力测试用例极限名称A如“最大并发用户数量”前提条件
输入动作输出/响应是否能正常运行如10个用户并发操作
如20个用户并发操作
1.3.2连接速度测试用户连接方式的不同:电话拨号上网;宽带上网;局域网;有限电视网;光纤网;电力网;361.3.2连接速度测试不管用户使用那种方式的不同,系统都不能让用户等较长的时间。连接速度测试的目的,就是要保证在许可的时间内响应用户的请求。37连接速率测试是否有这种情况,用户使用28.8kmodem下载一个页面需要10分钟,但测试人员在测试的时候使用的是T1专线?用户在下载文章或演示的时候,可能会等待比较长的时间,但却不会耐心等待首页的出现。381.3.2连接速度测试举例:如果访问一个页面Web系统相应时间太长(例如超过5秒钟),用户就会因失去耐心而离开。有些页面有超时的限制,如果响应速度太慢,用户可能还没来得及浏览内容,就需要重新登录了。如果连接速度太慢,还可能引起数据丢失,使用户得不到真实的页面。391.3.3负载测试负载测试是通过改变系统负载方式、增加负载等来发现系统中所存在的性能问题。负载测试是一种测试方法,可以为性能测试、压力测试所采用。负载测试的加载方式也有很多种,可以根据测试需要来选择。
它通常使用自动化测试工具来进行。
361.3.3负载测试负载测试的目的:负载测试是为了测试Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。361.3.3负载测试负载测试内容:某个时刻同时访问Web系统的用户数量;在线数据处理的数量。371.3.3负载测试例如:系统最多能允许多少个用户同时在线?如果超过了这个数量,会出现什么现象?系统能否处理大量用户同时对同一个页面的请求?381.4安全性测试目录测试SSL套接字测试登录验证日志文件脚本语言391.4.1目录测试40
目录安全如果没有设置好,将导致整个Web目录暴露给用户,这样会造成Web的安全性隐患。1.4.2SSL套接字测试41很多网站(大部分是电子商务和网上银行)采用SSL(SecuritySocketLayer)安全协议进行传送。SSL是由Netscape公司首先发表的网络数据安全传输协议。公钥和私钥HTTPSNetscape3.0以上才支持1.4.2SSL套接字测试42测试时,可以从以下几个方面进行测试:测试SSL/TLS的密码规范通过黑盒测试确认端口(443)使用工具扫描SSL服务防止中间人攻击防止中间人攻击43防止中间人攻击44通过代理篡改返回的数据包:防止中间人攻击45这样就能读取到Iframe中的内容:1.4.3
登录测试46测试用户名和输入密码是否有大小写区别。测试有效和无效的用户名密码测试用户登录是否有次数限制,是否限制从某些IP地址登录;假设允许登录失败的次数为3次,那么在用户第三次登录的时候输入正确的用户名和口令,测试是否能通过验证;测试口令选择是否有规则限制。1.4.3登录测试47测试哪些网页和文件需要登录才能访问和下载;测试是否可以不登录而直接浏览某个页面;测试Web应用系统是否有超时的限制,也就是说,用户登录后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登录才能正常使用。1.4.4日志文件测试48日志是否记录所有的事务处理;CPU的占有率是否很高;是否有例外的进程占用;是否记录失败的注册企图;是否记录被盗信用卡的使用;是否在每次事务完成的时候都进行保存;是否记录IP地址;是否记录用户名等。1.4.5脚本语言测试49由于脚本语言存在的安全隐患问题,经常被黑客利用来。所以,测试人员在做脚本语言测试时,应研究脚本语言的缺陷,并针对缺陷设计测试用例。此外,最好是订阅一个讨论站点使用的脚本语言安全性的新闻组,随时掌握脚本语言发展的最新动态。1.5可用性/易用性测试50可用性测试包括:导航测试;图形测试;内容测试;整体界面测试。导航测试51在不同的用户接口控制之间,例如按钮、对话框、列表和窗口等;或在不同的连接页面之间,导航描述用户在一个页面内操作的方式。导航测试的内容52导航是否直观?Web系统的主要部分是否可以通过主页访问?Web系统是否需要站点地图、搜索引擎或其他的导航帮助?导航测试的内容53测试Web系统的页面结构导航条、菜单、连接的风格是否一致?各种提示是否准确,确保用户凭直觉就知道是否还有内容,内容在什么地方。最好让最终用户参与导航测试,效果将更加明显。
图形测试54在Web网站中,适当的图片和动画既能起到广告宣传的作用,又能起到美化页面的功能。一个Web网站的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。
图形测试55要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间。图片尺寸要尽量地小,并且要能清楚地说明某件事情。验证所有页面的字体风格是否一致。背景颜色应该与字体颜色和前景颜色相搭配。图片的大小和质量也是一个很重要的因素,一般采用JPG或GIF压缩。
整体界面测试56整体界面测试是对整个Web系统的页面结构设计的测试,是用户对系统的一个整体感受。
整体界面测试57例如,当用户浏览Web网站时,应考虑是否感到舒适?是否凭直觉就知道要找到的信息在什么地方?整个Web应用系统的设计风格是否一致?
1.6兼容性/配置的测试平台测试;浏览器测试;分辨率测试;链接速率测试;组合测试。58平台测试市场上有很多不同的操作系统类型,最常见的有Windows、Unix、Macintosh、Linux等。Web网站的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。59平台测试平台测试就是要测试兼容性问题;同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。因此,在Web系统发布之前,需要在各种操作系统下对Web系统进行兼容性测试。60浏览器测试浏览器是Web系统客户端最核心的软件,来自不同厂商的浏览器对Java、JavaScript、ActiveX、plug-ins或不同的HTML有不同的支持。61浏览器测试ActiveX是Microsoft的产品,是为InternetExplorer而设计的,JavaScript是NetScape的产品,Java是Sun的产品等等。62浏览器测试另外,框架和层次结构风格在不同的浏览器中也有不同的显示,甚至根本不能显示。不同的浏览器对安全性和Java的设置也不一样。63分辨率测试页面版式在640*400600*800或1024*768的分辨率模式下是否显示正常?64组合测试600*800的分辨率在MAC机上可能不错,但是在IBM兼容机上却很难看。在IBM机器上使用Netscape能正常显示,但却无法使用Lynx来浏览。如果所有的人都使用T1专线,可能不需要测试下载、上载。65组合测试有些内部应用程序,开发部门可能在系统需求中声明不支持某些系统而只支持一些那些已设置的系统。理想的情况,系统能在所有机器上运行。661.7数据库测试网站把相关的数据和信息存储在数据库中,从而提高搜索效率。对于测试人员,要真正了解后台数据库的内部结构和设计概念,制定详细的数据库测试计划,至少能在程序的某个流
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 隧道工程课程设计纸
- 重症医学科护理课程设计
- 鲜花超市销售课程设计
- 车牌定位课程设计
- 饼干烹饪课程设计模板
- 2025至2031年中国数码管切脚机行业投资前景及策略咨询研究报告
- 二零二五年度酒吧租赁合同样本:海滨休闲酒吧经营权转让协议
- 二零二五年度终止劳动合同员工离职交接及保密协议
- 二零二五年度医院科研合作项目合伙经营合同
- 二零二五年度货拉拉搬家运输合同(含道路救援服务)
- Neo4j介绍及实现原理
- 锐途管理人员测评试题目的
- 焊接材料-DIN-8555-标准
- 工程索赔真实案例范本
- 重症医学科运用PDCA循环降低ICU失禁性皮炎发生率品管圈QCC持续质量改进成果汇报
- 个人股权证明书
- 医院运送工作介绍
- 重症患者的容量管理
- 学习游戏对中小学生学业成绩的影响
- 小学四年级上册递等式计算100题及答案
- 新版个人简历Excel表格模板共2联
评论
0/150
提交评论