论Web系统的测试技术及其应用
随着网络技术的广泛应用,许多传统的信息系统已经逐渐被移植到互联网上, Web系统已经对日常的工作和生活产生了深远的影响。为了保证Web系统的正确性,在系统开发阶段就要对其进行全面的测试、确认和验收,而且由于Web系统具有与传统信息系统截然不同的特点,需要采用针对Web系统特点的测试技术与方法。
请围绕“Web系统的测试技术及其应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与实施的Web系统开发项目以及你所担任的主要工作。
2.阐述主要针对哪几个方面进行Web系统测试,并对每个方面的具体测试内容进行详细论述。
3.阐述在进行Web系统的测试时遇到了哪些问题,如何解决。
写作要点:
一、论文中要具体介绍组织的业务背景、组织结构、Web系统的架构、采用的技术等内容和担任的实际工作。
二、Web系统测试包括:
1.功能测试,包括:
(1)链接测试。链接测试可分为三个方面。首先,测试所有链接是否按指示链接到正确的页面;其次,测试所链接的页面是否存在;最后,保证Web应用系统上没有孤立页面。链接测试可以自动进行,现在已经有许多工具可以采用。
(2)表单测试。当用户给Web应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、登录、信息提交等。在这种情况下,必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。如果使用默认值,还要检验默认值的正确性。如果表单只能接受指定的某些值,则也要进行测试。
(3)Cookies测试。如果Web应用系统使用了Cookies,就必须检查Cookies是否能正常工作。测试的内容可包括Cookies是否起作用,是否按预定的时间进行保存,刷新对Cookies有什么影响,等等。
(4)设计语言测试。Web设计语言版本的差异可以引起客户端或服务器端严重的问题,例如使用哪种版本的HTML等。当在分布式环境中开发时,开发人员都不在一起,这个问题就显得尤为重要。除了HTML的版本问题外,不同的脚本语言,例如Java、Javascript、ActiveX、VBscript或Perl等也要进行验证。
(5)数据库测试。在Web应用中,最常用的数据库类型是关系型数据库。在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误往往是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。
2.性能测试,包括:
(1)连接速度测试。由于用户连接到Web应用系统的速度差异较大,需要对Web系统响应时间进行测试;另外,需要对页面响应速度和超时设置进行测试;最后,需要考虑由于连接速度太慢而引起的数据丢失。
(2)负载测试。负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。
(3)压力测试。压力测试是指实际破坏一个Web应用系统,测试系统的反映。压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。压力测试的区域包括表单、登录和其他信息传输页面等。
3.可用性测试,包括:
(1)导航测试。导航测试需要考虑导航是否直观,Web系统的主要部分是否可通过主页存取,Web系统是否需要站点地图、搜索引擎或其他的导航帮助等导航可用性问题。Web系统的层次一旦决定,就要着手测试用户导航功能,让最终用户参与这种测试,效果将更加明显。
(2)图形测试。图形测试的内容有:验证图形用途,减少传输时间与传输量;验证所有页面字体的风格是否一致;验证背景颜色是否与字体颜色和前景颜色相搭配;检查图片的大小和质量,等等。
(3)内容测试。主要检验Web应用系统提供信息的正确性、准确性和相关性。
(4)整体界面测试。考察整个Web系统的页面结构设计,是否给用户的一个整体感。
对所有的可用性测试来说,都需要有外部人员的参与,最好是最终用户的参与。
4.客户端兼容性测试,包括:
(1)平台测试。需要在各种操作系统下对Web系统进行兼容性测试。
(2)浏览器测试。测试不同厂商、不同版本的浏览器对某些构件和设置的适应性。
5.安全性测试,包括:
(1)用户名、密码测试。必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登录而直接浏览某个页面等。
(2)超时测试。测试Web系统是否有超时的限制。
(3)日志信息测试。需要测试相关信息是否写进了日志文件、是否可追踪。
(4)安全套接字测试。当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。
(5)服务器端脚本问题。服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要就没有经过授权,就不能在服务器端放置和编辑脚本的问题进行测试。
三、在进行Web系统测试时可能存在的问题包括如何构建测试环境;如何选择合适的工具进行自动化测试;如何模拟大规模并发访问,并进行系统的性能测试;如何设计调查问卷,进行系统的可用性测试,等等。
( )is the process of transforming information so it is unintelligible to anyone but the intended recipient.
As each application module is completed,it undergoes( )to ensure that it operates correctly and reliably.
( )algorithm specifies the way to arrange data in a particular order.
After analyzing the source code,( )generates machine instructions that will carry out the meaning of the program at a later time.
( )can help organizations to better understand the information contained within the data and will also help identify the data that is most important to the business and future business decisions.
浏览器开启无痕浏览模式后,( )依然会被保存下来。
下列协议中,不属于TCP/IP协议簇的是( )。
下列传输介质中,带宽最宽、抗干扰能力最强的是( )。
数控编程常需要用参数来描述需要加工的零件的图形。在平面坐标系内,确定一个点需要2个独立的参数,确定一个正方形需要( )个独立的参数。
某书的页码为1,2,3,...,共用数字900个(一个多位数页码包含多个数字),据此可以推断,该书最大的页码为( )。