Web应用测试是软件评测师必考的知识点,每年在上午场和下午场都会出题,Web应用是一类特殊的软件,Web应用系统的开发同样要经过需求分析、设计、编码、实施等阶段,所以对软件的测试是贯穿整个软件生命周期的。下面就Web应用测试的概念、分类等知识点进行总结学习。
一、针对Web系统的构成和Web系统的一些特点,我们需要对涉及Web系统质量的各个方面进行测试。
(1)按系统架构来分,可分为客户端的测试、服务器端的测试和网络上的测试;
(2)按职能来分,可分为应用功能的测试、Web应用服务的测试、安全系统的测试、数据库服务的测试;
(3)按软件的质量特性来分,又可分为功能测试、性能测试、安全性测试、兼容性测试和易用性测试;
(4)按照开发阶段来分,可以分为设计的测试、编码的测试和系统的测试。
二、Web应用系统开发完成后,需要对Web应用进行全面的测试,其测试方法与其他系统的测试既有相同之处,又有不同之处。
相同之处体现在下面几个方面。
(1)测试内容基本相同:Web 应用系统作为软件系统的一种形式,其测试内容也会包括功能、性能、易用性、兼容性和安全性测试等内容。
(2)某些项目的测试方法基本相同:例如Web应用程序的功能测试与其他系统的功能测试方法是一样的,同样是根据功能说明书、需求说明书等文档,使用因果图法、边界值法等技术,设计测试用例进行测试。
(3)测试手段基本相同:Web. 应用系统的测试一样会采用人工测试、工具测试、评估等手段。
鉴于Web系统的自身特点,其测试与传统的软件测试也有所不同,具体不同如下所示。
(1)首先是测试的重点不一样:Web 应用系统的性能可能是开发者或用户最关心的一个测试内容,由于Internet的不可预见性和用户连接数的不固定性,人们经常对Web系统的稳定水平有所担心。另外,一些不断发展中的Web设计技术也使Web组件测试变得重要。安全性对某些涉及交易或重要数据的Web应用系统也很重要。由于用户客户端的不确定性,易用性测试和客户端配置与兼容性测试也是必要的一个内容。
(2)其次是测试采用的工具有所不同:Web应用的一些测试,如链接测试、表单测试、界面测试等,通常采用可以重复执行的自动化工具进行,性能测试除了采用LoadRunner、QALoad等通用的负载压力测试工具外,还有很多专门用于Web系统性能测试的工具,如WAST、ACT、Webload 等。
(3)最后Web应用系统迫切需要新的测试技术和方法:Web应用系统的开发技术是更新最快的开发技术之一,针对这种新组件、新技术的测试手段也必须及时探索,甚至要开发出新的测试工具以满足需求。
三、Web应用系统一般常见的测试类型包括:
(1)功能测试:和一般的功能测试的用例设计方法基本一样。
(2)易用性测试:包括界面测试、辅助功能测试(例如使用说明、导航、站点地图和帮助等)和图形测试等。
(3)性能测试(负载压力测试):性能是用户经常会遇到的一个棘手的问题,也可能是Web系统在投入实际使用以前最为关心的问题。
(4)客户端配置测试与兼容性测试:一般可分为浏览器的配置测试、平台(操作系统)兼容性测试和浏览器兼容性测试(不同浏览器对安全性和Java设置是不一样的)三个方面。测试浏览器的兼容性可以与操作系统的兼容性结合起来,最有效的方法是创建一个兼容性矩阵,在这个矩阵中,测试不同版本操作系统上的不同厂商、不同版本的浏览器对某些构件和设置的适应性(下午场考试经常出现)。
(5)安全性测试:一个完整的Web安全体系测试可以从部署与基础结构、输入验证、身份验证、授权、配置管理、敏感数据、会话管理、加密、参数操作、异常管理、审核和日志记录等几个方面入手。
四、Web测试的测试点包括:
(1)源代码规则分析。主要方法是使用基于规则检查的工具,读取输入的源代码,然后将源代码与编码标准或语言规则相对照,以找出存在于两者之间的不一致性,或者存在于源代码当中的潜在错误。
(2)链接测试。链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。链接测试可分为三个方面:
①测试所有链接是否按指示的那样确实链接到了该链接的页面;
②测试所链接的页面是否存在;
③保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。
(3)框架测试。主要检查点为:是否可随浏览窗口的变化自动调整大小;在当前窗口不能完全显示内容时是否提供滚动条功能;能否在正确的目标框架中打开新页面。
(4)表格测试。主要检查表格能否随浏览器窗口的变化或页面的变化自动调整大小。
(5)图形测试。主要检查点为:颜色饱和度和对比度是否合适;需要突出的链接的颜色是否容易识别;是否正确加载所有的图形。
下面是近几年对Web应用测试考察过的真题,基本上在每年都会出题,一般是1-2道题,以后仍是考试出题的重点,大家要重视起来。
【2017年67题】以下关于Web测试的叙述中,不正确的是( )
A、Web软件的测试贯穿整个软件生命周期
B、按系统架构划分,Web测试分为客户端测试、服务端测试和网络测试
C、Web系统测试与其他系统测试的测试内容基本不同但测试重点相同
D、Web性能测试可以采用工具辅助
解析:本题考查Web测试的基础知识。
web系统测试与其它系统测试测试内容基本相同只是测试重点不同。
故正确答案为C
【2018年67题】以下关于web测试的叙述中,不正确的是( ) 。
A.与其它系统的测试内容不同
B.与其它系统的测试手段基本相同
C.与其它系统的测试重点不同
D.与其它系统采用的测试工具部分不同
解析:本题考查web测试的基础知识。
web系统测试与其它系统测试测试内容基本相同只是测试重点不同。
故正确答案为:A
【2019年64题】以下关于Web的兼容性测试的叙述中,不正确的是( )。
A. 需要针对主流操作系统进行平台兼容性测试
B. 不同浏览器的安全性设计是一致的
C. 层次结构风格在不同的浏览器上可能有不同的显示
D. 浏览器的兼容性和操作系统的兼容性可以结合起来进行测试
解析:本题考查软件测试的基础知识。
不同浏览器的安全性设计是不一致的。故正确答案为:B
【2019年67题】Web测试的测试点包括( )。
①链接测试
②表格测试
③框架测试
④图形测试。
A. ①②
B. ①③
C. ①②③
D. ①②③④
解析:本题考查软件测试的基础知识。
①②③④描述的方面都属于Web测试的测试点。
故正确答案为:D