4、设计语言测试
   
    Web设计语言版本的差异可以引起客户端或服务器端严重的问题,例如使用哪种版本的HTML等。当在分布式环境中开发时,开发人员都不在一起,这个问题显得尤为重要。除了HTML的版本问题外,不同的脚本语言,例如Java、Javascrīpt、 ActiveX、VBscrīpt或Perl等也要进行验证。
   
    5、数据库测试
   
    在Web应用技术中,数据库起着重要的作用,数据库为Web应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。在Web应用中,常用的数据库类型是关系型数据库,可以使用SQL对信息进行处理。
   
    在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。
   
    二、性能测试
   
    网站的性能测试对于网站的运行而言异常重要,但是目前对于网站的性能测试做的不够,我们在进行系统设计时也没有一个很好的基准可以参考,因而建立网站的性能测试的一整套的测试方案将是至关重要的。
   
    网站的性能测试主要从三个方面进行:连接速度测试、负荷测试(Load)和压力测试(Stress),
   
    连接速度测试指的是打开网页的响应速度测试。负荷测试指的是进行一些边界数据的测试,压力测试更像是恶意测试,压力测试倾向应该是致使整个系统崩溃。
   
    1、连接速度测试
   
    用户连接到Web应用系统的速度根据上网方式的变化而变化,他们或许是电话拨号,或是宽带上网。当下载一个程序时,用户可以等较长的时间,但如果仅仅访问一个页面不会这样。如果Web系统响应时间太长(例如超过5秒钟),用户会因没有耐心等待而离开。
   
    另外,有些页面有超时的限制,如果响应速度太慢,用户可能还没来得及浏览内容,需要重新登陆了。而且,连接速度太慢,还可能引起数据丢失,使用户得不到真实的页面。
   
    2、负载测试
   
    负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。例如:Web应用系统能允许多少个用户同时在线?如果超过了这个数量,会出现什么现象?Web应用系统能否处理大量用户对同一个页面的请求?
   
    3、压力测试
   
    负载测试应该安排在Web系统发布以后,在实际的网络环境中进行测试。因为一个企业内部员工,特别是项目组人员总是有限的,而一个Web系统能同时处理的请求数量将远远超出这个限度,所以,只有放在Internet上,接受负载测试,其结果才是正确可信的。
   
    进行压力测试是指实际破坏一个Web应用系统,测试系统的反映。压力测试是测试系统的限制和故障恢复能力,也是测试Web应用系统会不会崩溃,在什么情况下会崩溃。黑客常常提供错误的数据负载,直到Web应用系统崩溃,接着当系统重新启动时获得存取权。
   
    压力测试的区域包括表单、登陆和其他信息传输页面等。
   
    采用的测试工具:
   
    性能测试可以采用相应的工具进行自动化测试,我们目前采用如下工具
   
    ab -----Apache 的测试工具
   
    OpenSTA-开发系统测试架构
   
    三、接口测试
   
    在很多情况下,web 站点不是孤立。Web 站点可能会与外部服务器通讯,请求数据、
   
    验证数据或提交订单。
   
    1、 服务器接口
   
    第一个需要测试的接口是浏览器与服务器的接口。测试人员提交事务,然后查看服务器
   
    记录,并验证在浏览器上看到的正好是服务器上发生的。测试人员还可以查询数据库,确认事务数据已正确保存。
   
    2、 外部接口
   
    有些 web 系统有外部接口。例如,网上商店可能要实时验证信用卡数据以减少欺诈行
   
    为的发生。测试的时候,要使用 web 接口发送一些事务数据,分别对有效信用卡、无效信用卡和被盗信用卡进行验证。如果商店只使用 Visa 卡和 Mastercard 卡, 可以尝试使用 Discover 卡的数据。(简单的客户端脚本能够在提交事务之前对代码进行识别,例如 3 表示 American Express,4 表示 Visa,5 表示 Mastercard,6 代表Discover.)通常,测试人员需要确认软件能够处理外部服务器返回的所有可能的消息。
   
    3、错误处理
   
    容易被测试人员忽略的地方是接口错误处理。通常我们试图确认系统能够处理所有错
   
    误,但却无法预期系统所有可能的错误。尝试在处理过程中中断事务,看看会发生什么情况?
   
    订单是否完成?尝试中断用户到服务器的网络连接。尝试中断 web 服务器到信用卡验证服
   
    务器的连接。在这些情况下,系统能否正确处理这些错误?是否已对信用卡进行收费?如果
   
    用户自己中断事务处理,在订单已保存而用户没有返回网站确认的时候,需要由客户代表致
   
    电用户进行订单确认。
   
    四、可用性测试
   
    可用性/易用性方面目前我们只能采用手工测试的方法进行评判,而且缺乏一个很好的评判基准进行,此一方面需要大家共同讨论。
   
    1、导航测试
   
    导航描述了用户在一个页面内操作的方式,在不同的用户接口控制之间,例如按钮、对话框、列表和窗口等;或在不同的连接页面之间。通过考虑下列问题,可以决定一个Web应用系统是否易于导航:导航是否直观?Web系统的主要部分是否可通过主页存取?Web系统是否需要站点地图、搜索引擎或其他的导航帮助?
   
    在一个页面上放太多的信息往往起到与预期相反的效果。Web应用系统的用户趋向于目的驱动,很快地扫描一个Web应用系统,看是否有满足自己需要的信息,如果没有,会很快地离开。很少有用户愿意花时间去熟悉Web应用系统的结构,因此,Web应用系统导航帮助要尽可能地准确。
   
    导航的另一个重要方面是Web应用系统的页面结构、导航、菜单、连接的风格是否一致。确保用户凭直觉知道Web应用系统里面是否还有内容,内容在什么地方。
   
    Web应用系统的层次一旦决定,要着手测试用户导航功能,让终用户参与这种测试,效果将更加明显。
   
    2、图形测试
   
    在Web应用系统中,适当的图片和动画既能起到广告宣传的作用,又能起到美化页面的功能。一个Web应用系统的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。图形测试的内容有:
   
    (1)要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间。Web应用系统的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面。
   
    (2)验证所有页面字体的风格是否一致。
   
    (3)背景颜色应该与字体颜色和前景颜色相搭配。
   
    (4)图片的大小和质量也是一个很重要的因素,一般采用JPG或GIF压缩。
   
    3、内容测试
   
    内容测试用来检验Web应用系统提供信息的正确性、准确性和相关性。
   
    信息的正确性是指信息是可靠的还是误传的。例如,在商品价格列表中,错误的价格可能引起财政问题甚至导致法律纠纷;信息的准确性是指是否有语法或拼写错误。这种测试通常使用一些文字处理软件来进行,例如使用Microsoft Word的"拼音与语法检查"功能;信息的相关性是指是否在当前页面可以找到与当前浏览信息相关的信息列表或入口,也是一般Web站点中的所谓"相关文章列表".
   
    4、整体界面测试
   
    整体界面是指整个Web应用系统的页面结构设计,是给用户的一个整体感。例如:当用户浏览Web应用系统时是否感到舒适,是否凭直觉知道要找的信息在什么地方?整个Web应用系统的设计风格是否一致?
   
    对整体界面的测试过程,其实是一个对终用户进行调查的过程。一般Web应用系统采取在主页上做一个调查问卷的形式,来得到终用户的反馈信息。
   
    对所有的可用性测试来说,都需要有外部人员(与Web应用系统开发没有联系或联系很少的人员)的参与,好是终用户的参与。
   
    五、兼容性测试
   
    需要验证应用程序可以在用户使用的机器上运行。如果您用户是全球范围的,需要测试各种操作系统、浏览器、视频设置和 modem 速度。后,还要尝试各种设置的组合。
   
    1、平台测试
   
    市场上有很多不同的操作系统类型,常见的有Windows、Unix、Macintosh、Linux等。Web应用系统的终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。
   
    因此,在Web系统发布之前,需要在各种操作系统下对Web系统进行兼容性测试。