在详细介绍Web测试的类型之前,让我们快速定义一下Web测试。
什么是Web测试?
Web测试,或称网站测试,是指在Web应用程序或网站上线并向公众开放之前,检查其是否存在潜在的错误。Web测试检查Web应用程序或网站的功能、可用性、安全性、兼容性和性能。
在此阶段,将检查Web应用程序安全、站点的功能、对残疾用户和正常用户的访问以及处理流量的能力等问题。
如何测试Web应用程序
在软件工程中,可以根据Web测试要求执行以下测试类型/技术。
1. 网站的功能测试
网站功能测试是一个包括用户界面、API、数据库测试、安全测试、客户端和服务器测试以及网站基本功能等多个测试参数的过程。它的执行是为了测试网站上每个功能的功能。
基于Web的测试活动包括:
测试网页中的所有链接是否正常工作,并确保没有断开的链接。要检查的链接包括-
- 外部链接
- 内部链接
- 锚定链接
- 邮件链接
测试表单正常,包括-
- 表单上的脚本检查工作正常。例如,如果用户没有在表单中填写必填字段,则会显示一条错误消息。
- 检查是否正在填充默认值
- 提交后,表单中的数据将提交到实时数据库或链接到工作电子邮件地址
- 表单的格式经过优化,提高可读性
测试Cookie工作正常。Cookie是网站用来主要记住活动用户会话的小文件,因此不需要l Cookie测试将包括
- 清除缓存或测试Cookie(会话)到期时,测试Cookie(会话)将被删除。
- 删除Cookie(会话)并测试下次访问该站点时是否会要求提供登录凭据。
测试HTML和CSS以确保搜索引擎可以轻松地爬行站点。这将包括
- 检查语法错误
- 易读性配色方案
- 标准合规性。确保遵守W3C、OASIS、IETF、ISO、ECMA或WS-I等标准。
测试业务工作流-这将包括
- 测试端到端工作流/业务场景,需要用户通过一系列网页才能完成。
- 还要测试否定的场景,这样当用户执行意外步骤时,Web应用程序中会显示相应的错误消息或帮助。
可以使用的工具:QTP、IBM Rational、Selenium
2. 可用性测试:
可用性测试现在已经成为任何基于Web的项目的重要组成部分。它可以由像这样的测试人员执行,也可以由一个类似于Web应用程序目标受众的小组来执行。
测试站点导航:
- 网站上不同页面的菜单、按钮或链接应该在所有网页上都很容易看到并保持一致
测试内容:
- 内容应清晰易读,没有拼写或语法错误。
- 如果存在图像,则应包含“alt”文本
可以使用的工具:Chalkmark、ClickTale、Clixpy和Feedback Army
3. 接口测试:
这里要测试的三个领域是-应用程序、Web和数据库服务器
- 应用:测试求正确发送到数据库,客户端输出显示正确。错误(如果有)必须由应用程序捕获,并且只能显示给管理员,而不能显示给最终用户。
- Web服务器:测试Web服务器正在处理所有应用程序求,没有任何服务拒绝。
- 数据库服务器:确保发送到数据库的查询提供预期结果。
当三层(应用、Web和数据库)之间无法建立连接并向最终用户显示相应的消息时,测试系统响应。
可以使用的工具:AlertFox、Ranorex
4. 数据库测试:
数据库是Web应用程序的一个关键组件,必须对其进行全面测试。测试活动将包括:
- 测试执行查询时是否显示任何错误
- 在数据库中创建、更新或删除数据时保持数据完整性。
- 检查查询的响应时间,并在必要时对其进行微调。
- 从数据库检索的测试数据将准确显示在Web应用程序中
可以使用的工具:QTP、Selenium
5. 兼容性测试。
兼容性测试可确保Web应用程序在不同设备上正确显示。包括:
浏览器兼容性测试:同一网站在不同浏览器中的显示方式不同。需要测试Web应用程序是否正在运行,还可以检查移动浏览器的兼容性。
网页元素,如按钮、文本字段等。确保网站在各种操作系统(如Windows、Linux、Mac)和浏览器(如Firefox、Internet Explorer、Safari等)上运行良好。
可以使用的工具:NetMechanical
6. 性能测试:
确保站点在所有负载下都能正常工作。软件测试活动将包括但不限于
- 不同连接速度下的网站应用程序响应时间
- 对Web应用程序进行负载测试,确定其在正常负载和峰值负载下的行为
- 对网站进行压力测试,确定其在高峰时间推送到超出正常负载时的断点。
- 测试如果峰值负载导致崩溃,站点如何从此类事件中恢复
- 确保启用gzip压缩、浏览器和服务器端缓存等优化技术,以减少加载时间
可以使用的工具:LoadRunner、JMeter
7. 安全测试:
对于存储信用卡等敏感客户信息的电子商务网站来说,安全测试至关重要。测试活动包括:
- 不应允许对安全页面进行未经授权的测试访问
- 如果没有适当的访问权限,则不下载受限制的文件
- 在用户长时间不操作后,检查会话并自动终止
- 使用SSL证书,普通网页重定向到加密的SSL页面。
可使用的工具:Babel Enterprise、BFBTester和CROSS
8. 众包测试
将选择大量人员来执行测试,可以将这些测试由公司中选定的一组人执行。众包测试是一个有趣的、即将到来的概念,能揭开许多未被注意到的缺陷。
作为一名网络测试人员,重要的是要注意到,网络测试是一个相当艰巨的过程,肯定会遇到很多障碍。最好是定义Web测试中涉及的所有任务,然后创建一个工作表,以便进行准确的估计和计划。