APP下载

基于B/S架构的Web软件系统测试应用分析

2017-03-31王文东

软件导刊 2016年8期
关键词:表单软件测试页面

王文东

摘 要:软件测试是检验软件系统质量的重要手段,在不同环境下,软件系统的测试方法也有所差异。相比传统的软件测试,当前应用广泛的B/S体系结构软件系统测试有很大不同。该此类型的系统测试主要包括可行性测试、性能测试、功能测试、兼容性测试以及安全性测试等。

关键词关键词:软件测试;B/S;Web

DOIDOI:10.11907/rjdk.161488

中图分类号:TP319

文献标识码:A 文章编号:1672-7800(2016)008-0137-03

0 引言

系统测试的目的主要是验证系统的功能和性能是否满足设计要求,发现系统的实际应用效果是否与系统定义相符合。系统测试是检验软件质量的重要手段,软件质量的检测一方面要检查软件的设计是否合理、编码是否准确,另一方面要看软件的系统测试是否全面。在软件开发和应用中,很多编码上的错误很难发现,只有通过后期的系统测试才能被发现,所以软件系统测试在保证软件质量方面有着重要作用。在不同的环境下,软件系统的测试方法也有所差异,本文就基于B/S架构的Web软件系统测试进行探讨。

1 基于B/S架构的Web软件系统

B/S体系结构的应用原理是:用户通过浏览器将操作请求发送给网络上的服务器,服务器对接收的信息进行分析、处理后将用户所需要的信息发送至浏览器。相比二层的C/S体系结构,B/S体系结构只是从客户机的任务中将事务处理逻辑模块分离出来,并单独组成一个任务应用层,该方式将负荷分配给Web服务器,可以极大减轻客户机的压力。B/S架构的一个明显特点就是简化了客户端,只需要安装通用的浏览器软件,不需要在客户机上设置多个客户应用程序,所以整个系统安装过程非常简单,网络结构非常灵活,而且系统的开发和维护简单。B/S体系结构的特殊性意味着系统的测试也需要采用不同的方法。基于B/S架构的软件系统以网页表单的方式进行界面展示,服务器承担了系统的大部分工作,客户端对后台服务的访问通过浏览器实现,而且只能够完成浏览、查询、数据输入等比较简单的功能操作,同时还采用Cookies形式保存用户信息。Web软件系统的开发需要以HTTP协议和HTML为依据,这就决定了此类软件都要遵循统一的结构。图1是一个典型的基于B/S架构的Web软件系统结构。

2 基于B/S架构的Web软件系统测试

基于BS架构的Web软件系统测试涉及到多方面内容,包括可行性测试、性能测试、功能测试、安全性测试、兼容性测试等等。相比传统的软件测试,基于BS架构的Web软件系统测试内容侧重点明显不同,测试过程需要用户参与,不仅要检查系统的运行是否按照设计要求,还要评价系统在各种浏览器上的显示效果,尤其要进行系统的安全性和可行性测试。

2.1 系统可行性测试

可行性测试其实就是检测用户对系统的理解程度和使用效果,类似于系统的可操作性测试,涉及到系统的功能、系统的发布、用户与系统的交互效果。系统可行性测试主要包括导航测试、图形测试、内容测试、界面测试等。

系统可行性测试方法:①通过页面走查的方式检查系统页面是否符合要求,测试不同分辨率下页面的显示效果,如果发现有不符合要求的地方应交给设计人员进行调整;②根据数据定义文档来检查表单项的内容设计效果;③通过浏览查看方式检测动态网页。

(1)导航测试。系统导航是对系统页面中用户操作方式的描述,可以在不同的连接页面之间,也可以在按钮、窗口等不同的接口控制之间。系统的导航测试主要是检测系统是否易于导航,系统导航的界面设计是否直观,是否可以通过主页面实现对系统主要内容的存取,系统是否需要搜索引擎或者网站地图帮助,另外还需要检测系统的页面结构设计、导航设计、菜单设计以及连接方式的风格是否一致,是否可以让用户通过导航直观地了解系统的主要内容。

(2)图形测试。网页的构成主要包括两种元素,即文字和图片。图片在网页应用中有着重要作用:①美化网页;②进行广告宣传。但在系统运行过程中,网络传输的数据量是有一定限制的,所以网站的图片数量也不能无限大。图片在网页上的位置也有一定要求,不能随意放置,要符合页面的审美要求。图形测试主要是检测系统中图形是否具有应用价值,图形或者动画的放置位置是否符合要求,页面上的文字应用风格是否一致,页面的背景、前景以及字体颜色应用是否搭配,网页中图片的大小设置是否合适,图片的质量是否达到要求,以及图片的应用格式(一般是JPG或者GIF压缩)是否符合。

(3)内容测试。内容测试主要是用文字处理软件对系统文字信息进行检测,检验系统文字信息是否具有一定的相关性、准确性,信息是否真实可靠,信息是否存在语法错误或书写错误,是否能够在当前的页面找到相关的信息列表等等。

(4)界面测试。界面测试主要是检测用户在浏览Web应用系统时,对系统的整体界面是否感到舒适、直观,是否能够凭直觉找到信息,系统整体设计风格是否一致。

2.2 系统功能测试

基于B/S架构的Web软件系统功能测试主要包括链接测试、表单测试、Cookies测试、设计语言测试以及数据库测试,采用的方法主要有黑盒测试、白盒测试、边界测试或者越界测试。功能测试是验证产品功能是否与产品需求规格一致,不需考虑系统内部软件的实现逻辑。功能测试是系统测试最重要、最基本的内容,要求测试人员全面了解产品的需求规格和业务功能,设计出高效的测试方案。

(1)链接测试。链接的主要功能是实现页面切换,并引导用户找到所需要的页面。在基于B/S架构的软件系统中,链接是一个非常重要的特点,链接测试3个内容:①检测页面链接的准确性;②检测所链接的页面是否存在;③确定Web系统中不存在没有设置链接的孤立页面。

(2)表单测试。表单测试是对系统运行过程中,服务器所接收到的表单信息是否正确进行检测。例如用户在登录系统时需要填写用户信息,在表單中的用户名和密码条框中设置要输入数字的地方是否也可以输入字母,输入后系统是否会提示出错。如果表单采用了默认值,就需要对默认值的正确性进行检测。如果表单输入限定了某些值,则需要继续测试。

(3)Cookies测试。Cookie是指服务器暂存在计算机上的信息资料,主要用于存放用户应用系统时的信息。当用户浏览网站时,服务器会向用户的计算机上发送一些Cookies形式的资料,以便服务器能够很好地辨认用户的计算机。如果系统有Cookies应用,就需要对Cookies的功能和性能进行测试,检测Cookies是否正常工作,是否准确、有效地保存,是否受到系统其它操作的影响。

(4)数据库测试。数据库为系统的管理、运行以及数据存储提供空间。数据库测试主要是检测数据输出的准确性、数据的一致性。用户在提交表单时所填写的信息不正确可能导致数据一致性出错,网络速度过慢或者程序设计缺陷则可导致数据输出错误,数据输出错误和数据一致性错误是系统数据库发生的两个重要错误。

2.3 系统性能测试

性能测试是保证软件系统质量的重要测试内容,涉及到的测试内容较多,主要包括3个方面,即客户端、网络以及服务器端的性能测试。客户端性能测试包括数据量测试、速度测试、并发性测试等,主要检测客户端的应用性能;网络上的测试主要内容是利用相关技术进行网络预测、网络性能分析;服务器端的测试在于实现对服务器系统、设备性能的全面监控,可采用工具或命令进行监控。上述三者有效结合才能实现系统的高性能运行。性能测试常用工具有webload、was、ewl等。

(1)链接速度测试。链接速度测试是基于B/S架构的软件系统性能测试的重要内容。在基于B/S架构的软件系统应用中,软件的功能主要是通过服务器实现的,服务器将系统信息发送至客户端,客户端通过对信息的浏览实现各种应用操作。因此,基于B/S架构的软件系统对链接速度有很高的要求。如果系统对用户的页面访问需求响应时间超过5s,则用户很可能因为没有耐心等待而放弃本次访问。一般情况下,系统网页的链接速度与入网的方式与很大关系,例如宽带上网、电话拨号上网等各种上网方式的链接速度各有千秋。当系统响应速度太慢时,用户往往还没有浏览到信息就需要重新登录,而且链接速度慢也是导致数据丢失的重要原因。

(2)负载测试。负载测试就是检测系统在一定需求范围内是否能够正常工作,例如系统允许多少用户同时访问,如果访问数量过大会出现什么情况。负载测试一般需要在实际网络环境中测试,因为在因特网上有足够量的访问用户,才能获得准确可信的测试结果。

(3)压力测试。压力测试包括表单测试、登录测试以及其它信息输出情况测试。检测在一定访问数量压力下系统的反应,以及系统的压力极限和故障恢复能力,检测系统在较大访问压力下是否会发生崩溃。黑客在对系统进行攻击时通常会对系统提供错误的负载,让系统发生崩溃,并在系统重启时获得存取权,以此对系统实施攻击。

2.4 客户端兼容性测试

系统的兼容性缺陷引起的问题往往比较微妙,很难被发现,系统的兼容性测试经常被忽略。系统兼容性测试方法一般是创建兼容性矩阵,测试过程中需要考虑以下几个问题:①系统能够在哪些操作系统环境下运行;②系统能够与哪些类型的数据库进行数据交换;③系统能够在哪些硬件配置环境中运行;④系统能够与哪些软件系统协同工作。客户端兼容性测试主要包括平台测试、浏览器测试。平台测试需要在系统发布之前进行,系统使用哪一种操作系统往往由系统的配置决定。同一应用可能在某些操作系统中能够正常运行,但却无法在其它操作系统中运行。浏览器测试主要是检测浏览器的显示效果。

2.5 系统安全性测试

系统安全性测试主要是检测系统安全机制的有效性,验证系统内部的安全机制能否保护系统免受非法攻击。系统的安全性不仅是指系统能够抵挡住正面攻击,还要能经受来自侧面和背面的攻击,如此才能保证系统资源的安全性。系统安全性测试内容主要有:①对用户名和密码信息进行测试,检测系统对登录信息大小写是否敏感,对输入次数有没有限制,在没有登录系统的情况下是否能够直接浏览页面;②检测系统是否对登录状态有时间限制,用户登录后一段时间是否需要重新登录才能正常使用;③检测系统访问信息是否被写入日志,是否能追踪;④检测安全套接字中密码设置的正确性,以及信息是否完整;⑤检测服务器端脚本的管理应用是否设置权限,以免成为黑客攻击系统的漏洞。

3 结语

本文从系统可行性测试、功能测试、性能测试、兼容性测试以及安全性测试等方面对基于B/S架构的Web软件系统测试进行了探讨。基于B/S架构的软件测试是一个复杂的系统工程,相比传统的软件测试有很大差别,整个测试内容要保证全面性、充分性,并扎实地完成系统测试,这样才能通过系统测试体现软件的应用效果,保证软件质量。

参考文献:

[1]李志峥,杨社堂.基于 B/S 结构下的软件系统测试研究[J].科技情报开发与经济,2006,16(7):232-234.

[2] 陈技能.软件测试技术大全——测试基础流行工具项目实战[M].北京:人民邮电出版社,2009:159-160.

[3] 单良.校园网环境下的 Web 软件测试方法研究[J].鸡西大学学报,2009(6):62-64.

[4]刘锦.基于B/S架构的Web应用软件系统测试研究[J].科技广场,2013(9):39-42.

[5]廖非凡.B/S架构的Web应用系统软件测试研究[J].科技风,2008(11):76-82.

[6]宋俊雅,王鹏彪,黄俊爽,等.B/S结构软件的系统测试技术[J].科技信息,2010(10):247-248.

[7]欧歌,张红梅,宋黎明.B/S结构Web应用系统测试综述[C].第13屆全国计算机、网络在现代科学技术领域的应用学术会议论文集,中国电子学会核电子学与核探测技术分会、中国核学会核电子学与核探测技术分会,2007.

(责任编辑:杜能钢)

猜你喜欢

表单软件测试页面
刷新生活的页面
电子表单系统应用分析
基于OBE的软件测试课程教学改革探索
EXCEL和VBA实现软件测试记录管理
浅谈网页制作中表单的教学
关于软件测试技术应用与发展趋势研究
软件测试工程化模型及应用研究
动态表单技术在教学管理中的应用*
基于Java可视化测绘生产流程表单的设计及实现
网站结构在SEO中的研究与应用