功能测试以及web系统测试方法

上一篇 / 下一篇  2012-07-02 11:37:52 / 个人分类:测试提升

网站功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。常用的测试方法如下:
一般的web功能测试方法有: 链接测试、表单测试、cookies测试、设计语言测试、数据库测试


1、页面链接检查: 每一个链接是否都有对应的页面,并且页面之间切换工具,如LinkBotPro、File-AIDCS、HTML Link Validater、Xenu等工具。LinkBotPro不支持中文,中文字符显示为乱码;HTML Link Validater只能测试以Html或者htm结尾的网页链接;Xenu无需安装,支持asp、do、jsp等结尾的网页,同时能够生成html格式的测试报告。

2、相关性检查:删除/增加一项会不会对其他项产生影响,如果产生影响,这些影响是否都正确检查按钮的功能是否正确 如新建、编辑、删除、关闭、返回、保存、导入等功能是否正确。

3、字符类型检查:在应该输入指定类型的内容的地方输入其他类型的内容(如在应该输入整型的地方输入其他字符类型),看系统是否检查字符类型。

1)标点符号检查:输入内容包括各种标点符号,特别是空格,各种引号,回车键。看系统处理是否正确。

2)特殊字符检查:输入特殊符号,如@、#、$、%、!等,看系统处理是否正确。

3)字符串长度检查: 输入超出需求所说明的字符串长度的内容, 看系统是否检查字符串长度。

4、中文字符处理:在可以输入中、英文的系统输入中文,看会否出现乱码或出错。

检查信息的完整性 在查看信息和更新信息时,查看所填写的信息是不是全部更新,更新信息和添加信息是否一致。

5、信息重复:在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理。

6、检查删除功能:在一些可以一次删除多个信息的地方,不选择任何信息,按“delete”,看系统如何处理,会否出错;然后选择一个和多个信息,进行删除,看是否正确处理。

7、检查添加和修改是否一致:检查添加和修改信息的要求是否一致,例如添加要求必填的项,修改也应该必填;添加规定为整型的项,修改也必须为整型

8、检查修改重名:修改时把不能重名的项改为已存在的内容,看会否处理,报错.同时,也要注意,会不会报和自己重名的错

9、重复提交表单:一条已经成功提交的纪录,返回后再提交,看看系统是否做了处理。对于Web系统检查多次使用返回键的情况   在有返回键的地方,返回到原来页面,重复多次,看会否出错

10、搜索检查:有搜索功能的地方输入系统存在和不存在的内容,看搜索结果是否正确.如果可以输入多个搜索条件,可以同时添加合理和不合理的条件,看系统处理是否正确。

11、输入信息位置:注意在光标停留的地方输入信息时,光标和所输入的信息会否跳到别的地方。

12、上传下载文件检查:上传下载文件的功能是否实现,上传文件是否能打开。对上传文件的格式有何规定,系统是否有解释信息,并检查系统是否能够做到。下载文件能否打开或者保存,下载的文件是否有格式要求,如需要特殊工具才可以打开等。

13、必填项检查:应该填写的项没有填写时系统是否都做了处理,对必填项是否有提示信息,如在必填项前加“*”;对必填项提示返回后,焦点是否会自动定位到必填项。

14、快捷键检查:是否支持常用快捷键,如Ctrl+C、 Ctrl+V、 Backspace等,对一些不允许输入信息的字段,如选人,选日期对快捷方式是否也做了限制。

15、回车键检查:在输入结束后直接按回车键,看系统处理如何,会否报错。

16、刷新键检查:在Web系统中,使用浏览器的刷新键,看系统处理如何,会否报错。   

17、回退键检查:在Web系统中,使用浏览器的回退键,看系统处理如何,会否报错。对于需要用户验证的系统,在退出登录后,使用回退键,看系统处理如何;多次使用回退键,多次使用前进键,看系统如何处理。

18、直接URL链接检查:在Web系统中,直接输入各功能页面的URL地址,看系统如何处理,对于需要用户验证的系统更为重要。

19、空格检查:在输入信息项中,输入一个或连串空格,查看系统如何处理。如对于要求输入整型、符点型变量的项中,输入空格,既不是空值,又不是标准输入。

20、输入法半角全角检查:在输入信息项中,输入半角或全角的信息,查看系统如何处理。如对于要求输入符点型数据的项中,输入全角的小数点(“。”或“.”,如4.5);输入全角的空格等。

21、密码检查:一些系统的加密方法采用对字符Ascii码移位的方式,处理密码加密相对较为简单,且安全性较高,对于局域网系统来说,此种方式完全可以起到加密的作用,但同时,会造成一些问题,即大于128的Ascii对应的字符在解密时无法解析,尝试使用“uvwxyz”等一些码值较大的字符作为密码,同时,密码尽可能的长,如17位密码等,造成加密后的密码出现无法解析的字符。

22、用户检查:任何一个系统,都有各类不同的用户,同样具有一个或多个管理员用户,检查各个管理员之间是否可以相互管理,编辑、删除管理员用户。同时,对于一般用户,尝试删除,并重建同名的用户,检查该用户其它信息是否重现。同样,提供注销功能的系统,此用户再次注册时,是否作为一个新的用户。

23、系统数据检查:这是功能测试最重要的,如果系统数据计算不正确,那么功能测试肯定是通不过的。数据检查根据不同的系统,方法不同。对于业务管理平台,数据随业务过程、状态的变化保持正确,不能因为某个过程出现垃圾数据,也不能因为某个过程而丢失数据。

24、系统可恢复性检查:以各种方式把系统搞瘫,测试系统是否可正常迅速恢复。

25.cookies检查

              Web系统测试方法



概要:  本文从功能、性能、可用性、客户端兼容性、安全性等方面讨论了网站测试方法
.功能测试

1.
链接测试

  链接是网站的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。链接测试可分为三个方面。首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证网站上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。

  链接测试可以自动进行,现在已经有许多工具可以采用比如常用的网站制作工具DreamweaverFrontpage都有自动链接测试功能。链接测试必须在集成测试阶段完成,也就是说,在整个网站的所有页面开发完成之后进行链接测试。

2.
表单测试

  当用户给网站管理员提交信息时,就需要使用表单操作,例如用户注册、登陆、信息提交等。在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。例如:Email邮件格式是否正确、填写的所属省份与所在城市是否匹配等。如果使用了默认值,还要检验默认值的正确性。如果表单只能接受指定的某些值,则也要进行测试。例如:只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。

3.Cookies
测试

  Cookies通常用来存储用户信息和用户在某应用系统的操作,当一个用户使用Cookies访问了某一个应用系统时,Web服务器将发送关于用户的信息,把该信息以Cookies的形式存储在客户端计算机上,这可用来创建动态和自定义页面或者存储登陆等信息。

  如果网站使用了Cookies,就必须检查Cookies是否能正常工作。测试的内容可包括Cookies是否起作用,是否按预定的时间进行保存,有效期是否合理,刷新对Cookies有什么影响等。

4.
设计语言测试

  Web设计语言版本的差异可以引起客户端或服务器端严重的问题,例如使用哪种版本的HTML等。当在分布式环境中开发时,开发人员都不在一起,这个问题就显得尤为重要。除了HTML的版本问题外,不同的脚本语言,例如JavaJavaScript.ActiveXVBScript.Perl等也要进行验证。

5.
数据库测试

  Web应用技术中,数据库起着重要的作用,数据库为网站的管理、运行、查询和实现用户对数据存储的请求等提供空间。在Web应用中,最常用的数据库类型是关系型数据库,可以使用SQL对信息进行处理。
  在使用了数据库的网站中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。

.性能测试

1.
连接速度测试

  用户连接到网站的速度根据上网方式的变化而变化,他们或许是电话拨号,或是宽带上网。当下载一个程序时,用户可以等较长的时间,但如果仅仅访问一个页面就不会这样。如果Web系统响应时间太长(例如超过5秒钟),用户就会因没有耐心等待而离开。
  另外,有些页面有超时的限制,如果响应速度太慢,用户可能还没来得及浏览内容,就需要重新登陆了。而且,连接速度太慢,还可能引起数据丢失,使用户得不到真实的页面。

2.
负载测试

  负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。例如:网站能允许多少个用户同时在线?如果超过了这个数量,会出现什么现象?网站能否处理大量用户对同一个页面的请求?

3.
压力测试

  负载测试应该安排在Web系统发布以后,在实际的网络环境中进行测试。因为一个企业内部员工,特别是项目组人员总是有限的,而一个Web系统能同时处理的请求数量将远远超出这个限度,所以,只有放在Internet上,接受负载测试,其结果才是正确可信的。

  进行压力测试是指实际破坏一个网站,测试系统的反映。压力测试是测试系统的限制和故障恢复能力,也就是测试网站会不会崩溃,在什么情况下会崩溃。黑客常常提供错误的数据负载,直到网站崩溃,接着当系统重新启动时获得存取权。

  压力测试的区域包括表单、登陆和其他信息传输页面等。

.可用性测试

1.
导航测试

  导航描述了用户在一个页面内操作的方式,在不同的用户接口控制之间,例如按钮、对话框、列表和窗口等;或在不同的连接页面之间。通过考虑下列问题,可以决定一个网站是否易于导航:导航是否直观?Web系统的主要部分是否可通过主页存取?Web系统是否需要站点地图、搜索引擎或其他的导航帮助?

  在一个页面上放太多的信息往往起到与预期相反的效果。网站的用户趋向于目的驱动,很快地扫描一个网站,看是否有满足自己需要的信息,如果没有,就会很快地离开。很少有用户愿意花时间去熟悉网站的结构,因此,网站导航帮助要尽可能地准确。

  导航的另一个重要方面是网站的页面结构、导航、菜单、连接的风格是否一致。确保用户凭直觉就知道网站里面是否还有内容,内容在什么地方。
网站的层次一旦决定,就要着手测试用户导航功能,让最终用户参与这种测试,效果将更加明显。

2.
图形测试

  网站中,适当的图片和动画既能起到广告宣传的作用,又能起到美化页面的功能。一个网站的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。图形测试的内容有:

  1)要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间。网站的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面。
  2)验证所有页面字体的风格是否一致。
  3)背景颜色应该与字体颜色和前景颜色相搭配。
  4)图片的大小和质量也是一个很重要的因素,一般采用JPGGIF压缩。

3.
内容测试

  内容测试用来检验网站提供信息的正确性、准确性和相关性。

  信息的正确性是指信息是可靠的还是误传的。例如,在商品价格列表中,错误的价格可能引起财政问题甚至导致法律纠纷;信息的准确性是指是否有语法或拼写错误。这种测试通常使用一些文字处理软件来进行,例如使用Microsoft Word"拼音与语法检查"功能;信息的相关性是指是否在当前页面可以找到与当前浏览信息相关的信息列表或入口,也就是一般Web站点中的所谓"相关文章列表"

4.
整体界面测试

  整体界面是指整个网站的页面结构设计,是给用户的一个整体感。例如:当用户浏览网站时是否感到舒适,是否凭直觉就知道要找的信息在什么地方?整个网站的设计风格是否一致?


  对整体界面的测试过程,其实是一个对最终用户进行调查的过程。一般网站采取在主页上做一个调查问卷的形式,来得到最终用户的反馈信息。

  对所有的可用性测试来说,都需要有外部人员(与网站开发没有联系或联系很少的人员)的参与,最好是最终用户的参与。

.客户端兼容性测试

1.
平台测试

  市场上有很多不同的操作系统类型,最常见的有WindowsUnixMacintoshLinux等。网站的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,就可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。

  因此,在Web系统发布之前,需要在各种操作系统下对Web系统进行兼容性测试。

2.
浏览器测试

  浏览器是Web客户端最核心的构件,来自不同厂商的浏览器对Java,、JavaScript.ActiveXplug-ins或不同的HTML规格有不同的支持。例如,ActiveXMicrosoft的产品,是为Internet Explorer而设计的,JavaScript.Netscape的产品,JavaSun的产品等等。另外,框架和层次结构风格在不同的浏览器中也有不同的显示,甚至根本不显示。不同的浏览器对安全性和Java的设置也不一样。

  测试浏览器兼容性的一个方法是创建一个兼容性矩阵。在这个矩阵中,测试不同厂商、不同版本的浏览器对某些构件和设置的适应性。

.安全性测试

网站的安全性测试区域主要有:

  1)现在的网站基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。

  2网站是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。

  3)为了保证网站的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。

  4)当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。

  5)服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。




TAG: 功能测试

natang51testing的个人空间 引用 删除 natang51testing   /   2017-08-29 16:46:03
写的很详细,赞赞
 

评分:0

我来说两句

Open Toolbar