Web应用程序测试完整指南(如何测试网站)

完整的Web应用程序测试指南:如何测试网站

我们都必须承认,在当今瞬息万变、竞争激烈的世界,互联网已经成为我们生活中不可或缺的一部分。

如今,我们大多数人都是通过在互联网上搜索信息来做决定的,因此,对所有类型的企业来说,托管网站不再是可选的,而是强制性的。这是在市场上站稳脚跟的第一步。

仅仅有一个网站是不够的。需要一个组织来开发一个信息丰富、易于访问和用户友好的网站。为了保持所有这些品质,网站应该经过良好的测试,而这个测试网站的过程被称为web测试。

qa

什么是Web测试?

Web测试是一种软件测试实践,用于测试网站或Web应用程序的潜在bug。它是对基于web的应用程序的完整测试。

基于web的系统在面向最终用户投入使用之前,需要从端到端的彻底检查。

通过执行网站测试,组织可以确保基于web的系统正常运行,并且能够被实时用户接受。

UI设计和功能是网站测试的核心。

Web测试清单

  1. 功能测试 2)可用性测试 3)接口测试 4)兼容性测试 5)性能测试 6)安全测试

实践本页所述web测试概念的推荐工具:

CrossBrowserTesting

CrossBrowserTesting允许您在基于云的真实设备实验室的任何浏览器或移动设备上实现完美的web体验。抛弃您的vm和设备实验室。在云端轻松运行手动,视觉测试,selenium test等,可以直接运行在2050+的真实的桌面以及移动端浏览器上。 #2)Ranorex Webtestit

Ranorex Webtestit使用Java或TypeScript为Selenium或Protractor提供开箱即用的Web测试自动化。 它会自动下载所需的驱动程序并构建您的测试框架,以便您在几分钟内开始工作。

通过自动创建页面对象,UI元素定位器和样板代码节省更多时间; 内置测试报告; 和更多。 将跨浏览器测试分发到本地WebDriver端点,Selenium Grid或基于云的提供程序。

功能测试

测试 - 网页中的所有链接,数据库连接,用于在网页中提交或从用户获取信息的表单,Cookie测试等。

检查所有链接:

  • 测试从所有页面到测试中的特定域的传出链接。
  • 测试所有内部链接。
  • 测试链接在同一页面上跳跃。
  • 用于从网页向管理员或其他用户发送电子邮件的测试链接。
  • 测试以检查是否有任何孤立页面。
  • 最后,链接检查包括检查所有上述链接中的坏链接。

所有页面上的测试表格: 表单是任何网站不可分割的一部分。表单用于接收来自用户的信息并与之交互。那么这些表格中应该测试什么呢?

首先,检查每个字段的所有验证。 检查字段的默认值。 表单中的字段输入错误。 创建窗体(如果有)、窗体删除、查看或修改窗体的选项。

让我们以我目前正在进行的搜索引擎项目为例,在这个项目中,我们有广告客户和附属注册步骤。每个注册步骤是不同的,但它依赖于其他步骤。

所以注册流程应该得到正确的执行。有不同的字段验证,如电子邮件id,用户财务信息验证等。所有这些验证都应该在手动或自动web测试中检入。

Cookies测试:

Cookie是存储在用户计算机上的小文件。 这些基本上用于维护会话 - 主要是登录会话。 通过在浏览器选项中启用或禁用cookie来测试应用程序。

在写入用户计算机之前测试cookie是否已加密。 如果您正在测试会话cookie(即会话结束后过期的cookie),请在会话结束后检查登录会话和用户统计信息。 通过删除cookie来检查对应用程序安全性的影响。 (我将很快写一篇关于cookie测试的文章)

验证您的HTML / CSS:

如果您正在为搜索引擎优化站点,那么HTML/CSS验证是最重要的。主要验证站点的HTML语法错误。检查网站是否可抓取到不同的搜索引擎。

数据库测试:

数据一致性在Web应用程序中也非常重要。 在编辑,删除,修改表单或执行任何与DB相关的功能时,请检查数据完整性和错误。

检查所有数据库查询是否正确执行,检索数据并正确更新。 有关数据库测试的更多信息可能是数据库的负载,我们将在下面的Web负载或性能测试中解决此问题。

在测试网站的功能时,应测试下列各项:

链接

  1. 内部链接
  2. 外部链接
  3. 邮件的链接
  4. 失效链接

表单

  1. 字段验证。
  2. 错误输入的错误消息
  3. 可选和强制字段

数据库 将对数据库完整性进行测试。

可用性测试

可用性测试是测量系统的人机交互特征的过程,并且识别缺陷以进行校正。

  • 易于学习
  • 导航
  • 主观用户满意度
  • 总体外观

导航测试:

导航是指用户如何浏览网页,不同的控件(如按钮、框)或用户如何使用网页上的链接浏览不同的网页。

可用性测试包括以下内容:

  • 该网站应该易于使用。
  • 提供的说明应该非常清楚。
  • 检查所提供的指示是否完全符合其目的。
  • 应在每页上提供主菜单。
  • 它应该足够一致。

内容检查:

内容应该合乎逻辑且易于理解。 检查拼写错误。 深色的使用会使用户烦恼,不应在网站主题中使用。

您可以遵循用于网页和内容构建的一些标准颜色。 这些是普遍接受的标准,就像我上面提到的关于恼人的颜色,字体,框架等。

内容应该是有意义的。 所有锚文本链接应该正常工作。 图像应正确放置,尺寸合适。

这些是Web开发中应遵循的一些基本重要标准。 您的任务是验证所有UI测试。

用户帮助的其他用户信息:

与搜索选项一样,站点地图也可以帮助文件等。站点地图应该与网站中具有正确的导航树视图的所有链接一起出现。 检查站点地图上的所有链接。

“在网站上搜索”选项将帮助用户轻松快速地找到他们正在寻找的内容页面。 这些都是可选项,如果存在,则应进行验证。

接口测试

在Web测试中,应测试服务器端接口。 这是通过验证通信是否正确完成来完成的。 应测试服务器与软件,硬件,网络和数据库的兼容性。

主要接口是:

  • Web服务器和应用服务器接口
  • 应用服务器和数据库服务器接口
  • 检查是否执行了这些服务器之间的所有交互并正确处理了错误。 如果数据库或Web服务器为应用程序服务器的任何查询返回错误消息,则应用程序服务器应捕获并适当地向用户显示这些错误消息。

检查如果用户中断任何交易,会发生什么? 检查如果在两者之间重置与Web服务器的连接会发生什么?

兼容性测试

网站的兼容性是一个非常重要的测试方面。查看要执行哪些兼容性测试:

  1. 浏览器兼容性
  2. 操作系统兼容性
  3. 移动浏览
  4. 打印选项

浏览器兼容性:

在我的网络测试生涯中,我经历过这是网站测试中最具影响力的部分。 有些应用程序非常依赖于浏览器。不同的浏览器具有不同的配置和设置,您的web页面应该与之兼容。

您的网站编码应该是兼容的跨浏览器平台。 如果您正在使用Java脚本或AJAX调用来执行UI功能,执行安全检查或验证,那么就会更加重视Web应用程序的浏览器兼容性测试。

在不同版本的Internet Explorer,Firefox,Netscape Navigator,AOL,Safari,Opera浏览器等不同浏览器上测试Web应用程序。

OS兼容性:

web应用程序中的一些功能可能不兼容所有操作系统。在web开发中使用的所有新技术,如图形设计、不同API的接口调用等,可能并不是在所有操作系统中都可用。

因此,在具有不同操作系统风格的Windows,Unix,MAC,Linux,Solaris等不同操作系统上测试您的Web应用程序。

移动浏览:

我们正处在新技术时代。因此,未来的移动浏览将会大行其道。在移动浏览器上测试web页面。在移动设备上也可能存在兼容性问题。

打印选项:

如果您要提供页面打印选项,请确保正确打印字体,页面对齐,页面图形等。 页面应符合纸张尺寸或打印选项中提到的尺寸。

性能测试

web应用程序应该能够承受高负载。Web性能测试应该包括:

Web负载测试 网络压力测试 测试不同Internet连接速度下的应用程序性能。

Web负载测试:

您需要测试许多用户是否正在访问或请求同一页面。 。系统在高峰负荷时能维持吗?站点应该同时处理许多用户请求、来自用户的大量输入数据、同时连接到数据库、特定页面的重载等。

Web压力测试:

通常压力意味着将系统拉伸超出其指定的限制。 进行Web压力测试是为了通过给予压力来打破站点,并检查系统如何对压力做出反应以及如何从压力中恢复。 压力通常在输入字段,登录和注册区域给出。

在Web性能中,检查在不同操作系统和不同硬件平台上测试网站功能的软件和硬件内存泄漏错误。

可以应用性能测试来了解网站的可扩展性,或者对可能购买的第三方产品(如服务器和中间件)环境中的性能进行基准测试。

连接速度

在拨号,ISDN等各种网络上测试过。

负载

  1. 每秒或者每分钟的用户数
  2. 检查峰值负载以及系统的行为方式
  3. 用户访问的最大量

压力

  1. 连续负载
  2. 内存,CPU,文件处理等性能。

安全测试

以下是Web安全测试的一些测试用例:

  • 通过将内部URL直接粘贴到浏览器地址栏中进行测试,无需登录。 内部页面不应该打开。
  • 如果您使用用户名和密码登录并浏览内部页面,请尝试直接更改URL选项。 即如果您正在检查发布者站点ID = 123的某些发布者站点统计信息。请尝试直接将URL站点ID参数更改为与登录用户无关的其他站点ID。 此用户应拒绝访问以查看其他统计信息。 在输入字段中尝试一些无效输入,如登录用户名,密码,输入文本框等。检查系统对所有无效输入的反应。
  • 除非给出下载选项,否则不应直接访问Web目录或文件。
  • 测试CAPTCHA以自动执行脚本登录。
  • 测试SSL是否用于安全措施。 如果使用它,当用户从非安全HTTP://页面切换到安全HTTPS://页面时,应显示正确的消息,反之亦然。
  • 所有事务,错误消息,安全漏洞尝试都应记录在Web服务器上的某个日志文件中。

测试Web安全性的主要原因是识别潜在的漏洞并随后进行修复。

  • 网络扫描
  • 漏洞扫描
  • 密码破解
  • log回顾
  • 完整性检查
  • 病毒检测

Web测试的类型

一个网站可以分为很多类型,大约有20种。所有这些在静态和动态类型下都在收缩。其中,我们将详细讨论4种类型及其测试方法。在那之前,我只想把这些类型的子弹。

  • 简单的静态网站测试
  • 动态Web应用程序测试
  • 电子商务网站测试
  • 移动网站测试

简单的静态网站

一个简单的静态网站将为所有在不同时间访问该网站的访问者显示相同的内容。它也被称为信息网站。在静态网站中,唯一的开发人员也只能在代码中进行更改。这种类型的网站不会有任何主要功能,它完全取决于UI设计。

测试一个简单的静态网站非常简单,在测试时你只需要考虑一些事情。 其中一些提到如下:

要记住的要点:

  1. 测试GUI设计是必须的,因为静态网站纯粹依赖于它。 您需要将已批准的PSD文件与开发的网页进行比较。 检查设计中应显示在开发页面中的所有元素。

  2. GUI设计的另一部分是检查所有已经复制的字体大小,字体样式,间距和颜色。

  3. 其次,您需要检查链接(页面链接)是否正常工作? 并且还要发现是否有任何坏链接?

  4. 通过比较客户端给出的内容来验证所有网页中的拼写和内容。

  5. 在某些情况下,图像无法正常显示,可能会中断,或者有时图像会重复,可能会显示错误的图像。 必须仔细检查。 因为对于静态网站,只有内容和图片才能赋予生命。

  6. 仔细检查滚动条,根据我的经验,我遇到滚动条问题。 您将面临的问题是显示不需要的滚动或滚动隐藏(它可能隐藏内容)。 以上问题适用于水平和垂直滚动。

  7. 如果有一个联系人表单,通过发送一些假消息来检查它是否正常工作。

联系表单中要检查的内容有:

  • 消息是否正确发送并显示成功消息?
  • 检查收到的电子邮件是否按照设计的正确格式收到了相关人员?
  • 检查电子邮件不应该作为垃圾邮件登陆垃圾邮件?
  • 如果有回复电子邮件触发器被激活,那么检查发件人是否收到邮件?
  1. 检查它是否是一个没有错误的网页,用W3验证器或其他相关软件进行验证。

  2. 在静态网站中要检查一些不变的东西,

  • 选项卡栏上显示检查图标
  • URL应包含正确的页面标题
  • 如果有版权信息,则应显示
  • 如果有联系表格,Captcha是必须的。 [它可以防止垃圾邮件]
  • 检查网站的加载速度。 [静态网站不应该花费很多时间来加载]。 如果在加载时使用gif图像,则跟踪其功能

除此之外,还有很多东西需要在每个网站的后端进行测试,包括系统测试 ,安全测试,接口测试,兼容性测试和性能测试等。为此,您需要掌握技术知识。 在一个简单的静态网站中,如果您还需要进行功能测试,则无法找到更多功能。

动态Web应用程序[CMS网站]

它是用户可以定期更新和更改其网站内容的类型。从这里开始,我将使用“web应用程序测试”这个词来代替动态网站测试。web应用程序是前端和后端编程的组合。

前端将是HTML和CSS,而后端使用java,PHP,Javascript和ASP等编程语言。使用此后端,用户/客户端可以添加或更改网站上的内容。

测试Web应用程序并不比测试静态网站容易,但测试电子商务网站并不困难。 功能测试是测试Web应用程序时最重要的事情。 Web应用程序可能包含非常复杂的功能,因此测试人员在测试时需要非常小心。

有两种不同类型的Web应用程序,一种是用户在前端不执行任何操作(即只有后端更改将反映在前端)另一种是终端用户将在前端本身工作(例如登录、注册、订阅时事通讯和其他类似的操作)。所以应该根据它来进行测试。

要记住的要点:

我在静态网站测试中提到的要点也包括在测试Web应用程序时。 除此之外,还应注意以下事项。

  1. 在GUI部分,所有字段和按钮都必须提供工具提示 ,字段对齐(间距)应正确完成,禁用的字段/按钮应显示为灰色,字段/按钮应采用SRS中的标准格式,错误信息应该如果出现问题则显示,弹出消息应仅显示在网页的中心,不应截断下拉菜单。

选项卡快捷键应适用于所有字段等。

  1. 在功能部分,如果您的Web应用程序具有登录或注册功能,则检查必填字段验证 ,表单验证(即数字字段应仅接受数字,而不是字母表),字段限制字段(即只有这么多字符)可以输入)。

字段上的特殊字符和负数限制,测试电子邮件功能,测试文档上载(即只能上载指定的文档类型 ),超时功能,排序功能,javascript正在兼容的浏览器等应该进行测试。

  1. 当进入后端功能部分时,测试图像上传是否有损坏的图像,在字段中输入的文本是否有效。 后端更新应该反映在前端 , 数据库测试 (即,是否可以添加新字段或删除不需要的字段)所有这些都要执行。

Web应用程序(动态网站)的性能不是很多,因为它的内容非常少。 如果您需要,您可以使用您熟悉的工具。 如果您想进行简单的性能测试,请选择一些标准的在线性能工具。

电子商务网站

与上述两个相比,电子商务网站有点复杂。 测试电子商务网站时,测试人员需要非常谨慎。 电子商务网站有很多东西需要检查,我只是介绍一些有关电子商务网站测试的经验问题。

在GUI部分中,您需要检查SRS中的所有功能,并与功能相同。 所有商业网站的功能几乎相同。

功能方面,您需要检查所有页面,如主页面(包括特色产品,特价商品显示,登录详细信息,搜索功能)产品详细信息页面,类别页面,下订单,支付网关一切都必须进行测试。

要记住的要点:

  1. 购买或增加购物车时,检查购物车是否更新。 在所有页面和环境中检查此功能。

  2. 检查特殊优惠券和优惠是否适用于正确的订单,并且您看到折扣价格是否显示。

[此图片介绍了免费送货及其在付款部分的应用方式]

  1. 有时,在更新单个产品时,会考虑产品的变化数量而倍增。 因此,请检查是否显示单个产品并正确显示其变化。 (我遇到了这个问题)

  2. 检查过滤器选项是否正常工作。 如果已根据所选类别和定价进行过滤?

  3. 注册时,应该进行超级验证。 只有新用户才能注册。

  4. 如果现有用户将产品添加到购物车,则在上一次登录期间的心愿单部分也应保存并在下次登录时显示。

  5. 通过比较基于后端指定的某些规范的产品来比较产品应该工作。

  6. 检查货币转换器是否正常工作。 根据所选国家/地区,货币转换器应显示相关价格和税率。

  1. 通常很多插件都用在电子商务(WordPress和类似)网站上,你需要非常小心。 插件安装可能会冲突或影响任何其他主要功能。 因此,请跟进插件安装及其用法。

  2. 检查社交共享选项是否适用于单个产品。

  3. 运输成本应根据所选地区生成。 并检查税率的产生。 (在最终用户购买期间,可能会导致一些法律问题)。

12. 只有在提供有效的卡详细信息时,支付网关才能工作。 验证应适用于卡号和CCV代码。 [最好在卡号字段本身上进行验证]。

  1. 购买过程中每个流程的电子邮件生成应该发生(注册,产品订购,付款成功,订单取消,订单收到和其他电子邮件触发器,如果​​有的话)。

  2. 用一些垃圾邮件检查实时聊天。

注意:一般情况下,电子商务网站不会为了移动兼容性而开发,当进入移动版时,将生成一个应用程序。 在某些情况下,他们不会创建应用程序,而是会创建一个移动兼容的网站。 在这种情况下,您需要仔细检查以确定是否存在任何缺失功能和UI偏差。

这些是我在测试电子商务网站时遇到并注意到的一些问题。 除此之外,您还需要检查与电子商务网站相关的所有常规内容。

移动网站

首先,让我们清楚一下移动网站。 一般来说,人们认为移动网站和移动应用程序是相同的,但实际上,移动网站是使用HTML页面开发的,只能通过互联网连接查看。

但移动应用程序只不过是一个可以下载的应用程序,以后可以在没有互联网连接的情况下使用。 在这里,我们很多人感到困惑,并提出一个问题移动网站和响应网站有什么区别?

响应式网站是指使内容适合移动设备的大小,而不是创建一个版本,而移动网站是创建一个新的版本,而不是反射桌面版本。在移动网站中,您将只有有限的页面,并删除了不必要的功能。

与其他类型的网站相比,测试一个移动网站有点乏味。它将有单独的设计,您在测试功能时需要非常小心。

要记住的要点:

测试移动网站时需要考虑的重点:

  • 通常,我们将使用模拟器来测试移动网站,我们可以获得理想的结果,但我总是希望您在真实设备上进行测试。 当我在真实设备[特别是苹果设备]中进行测试时,我遇到了许多问题。 真实设备规范可能与开发的网页冲突。

[此图片解释了模拟器测试及其中出现的背线问题。]

  • GUI和可用性测试更重要,因为它不是桌面版本的反映。
  • 性能是移动网站测试需要考虑的另一个重要因素。 在真实设备中进行测试时,可以跟踪- 与性能相关的问题。
  • 检查是否正在通过移动链接触发从移动设备浏览正常的网络链接。
  • 检查移动网站上的页面滚动,页面导航,文本截断等。 最好的Web测试工具

有许多可用于Web应用程序测试的测试工具。

=> 查看最流行的Web应用程序测试工具的完整列表 。 https://www.softwaretestinghelp.com/most-popular-web-application-testing-tools/

测试网站时要考虑的要点

这些网站本质上是客户端/服务器应用程序 - 具有Web服务器和“浏览器”客户端。

应考虑HTML页面,TCP / IP通信,Internet连接,防火墙,在网页中运行的应用程序 (如applet,javascript,插件应用程序)和在服务器端运行的应用程序 (如作为CGI脚本,数据库接口,日志应用程序,动态页面生成器,asp等)。

此外,还有各种各样的服务器和浏览器,每个版本都有不同的版本。它们在连接速度、快速变化的技术以及多种标准和协议方面存在细微但有时显著的差异。网站测试的最终结果可以成为一个主要的持续工作。

用于测试Web应用程序的示例测试方案

下面给出了在测试网站时要包括的其他几个注意事项 。

  • 服务器上的预期负载是多少(例如,每单位时间的命中数)?
  • 每种负载条件下都需要什么样的性能(例如Web服务器响应时间,数据库查询响应时间)?
  • 性能测试将需要什么样的工具(例如web负载测试工具、其他内部可用的工具、web机器人下载工具等)?
  • 谁是目标受众? 他们会使用什么样的浏览器? 他们将使用什么样的连接速度? 它们是组织内部(因此可能具有高连接速度和类似浏览器)还是整个Internet(因此具有各种连接速度和浏览器类型)?
  • 客户端期望达到什么样的性能(例如,页面出现的速度,动画,applet等的加载和运行速度有多快)?
  • 是否允许服务器和内容维护/升级的停机时间? 如果是这样,那么多少钱?
  • 需要什么样的安全性(防火墙,加密,密码等)以及它应该做什么? 怎么测试?
  • 网站的互联网连接有多可靠? 这对备份系统或冗余连接要求和测试有何影响?
  • 管理网站内容更新需要哪些流程?
  • 维护,跟踪和控制页面内容,图形,链接等有哪些要求?
  • 将遵守哪种HTML规范? 怎么严格? 目标浏览器允许哪些变体?
  • 整个站点或站点的部分页面外观和/或图形是否有任何标准要求?
  • 如何验证和更新内部和外部链接? 多久一次? 它会发生吗?
  • 可以在生产系统上进行测试,还是需要单独的测试系统?
  • 浏览器缓存、浏览器选项设置的变化、拨号连接的变化以及真实世界的互联网“交通拥堵”问题如何被纳入测试?
  • 服务器日志记录和报告需求有多广泛或自定义;它们是否被认为是系统的组成部分,是否需要测试?
  • 如何维护,跟踪,控制和测试CGI程序,applet,javascript,ActiveX组件等?
  • 除非内容高度集中在一个主题上,否则页面最多应该是3-5个屏幕。如果较大,则在页面中提供内部链接。
  • 页面布局和设计元素应在整个站点中保持一致,以便用户清楚它们仍在站点上。
  • 页面应尽可能与浏览器无关,或者应根据浏览器类型提供或生成页面。
  • 所有页面都应该有页面外部的链接; 应该没有死胡同。
  • 每个页面都应包含页面所有者,修订日期以及指向联系人或组织的链接。

Web测试常见问题解答

以下是测试人员在考虑一个已经开发并可以向公众开放的网站时想到的各种问题:

  • 网站是否按预期运作?
  • 最终用户是否会发现网站易于浏览?
  • 网站是否可以在最终用户拥有的不同设备上访问?
  • 网站足够安全吗?
  • 网站性能是否达到了标准?
  • 在网站上输入的数据是否准确存储并在会话中持续存在?
  • 该网站是否与工作流程中的其他界面很好地集成?
  • 即使在上线后网站也能按预期运行吗?

为了回答这些问题,已经确定了可用于测试Web应用程序的不同测试技术。

让我们举一个最近发布给QA团队进行测试的电子商务网站的例子。

我们将详细介绍上述每个问题,以了解测试的范围,并了解如何执行网站测试。

网站是否按预期运作?

确认网站运行良好,QA需要进行功能测试。 在功能测试期间,应用程序的不同功能需要根据功能规范文档中提到的要求进行验证。

以下是一些通用方案,即使在功能规范中未提及任何网站的功能测试,QA也应涵盖其中:

  • 用户导航到网站的不同页面并完成端到端工作流程
  • 如果用户可以选择/取消选中复选框
  • 如果用户可以从下拉字段中选择值
  • 如果用户可以选择/取消选择单选按钮
  • 不同的导航按钮,如提交,下一步,上传等按钮运行良好
  • 日历正在正确加载并允许用户选择日期
  • 计算正在实施中
  • 搜索功能正在运行(如果有)
  • 正确的信息显示
  • 其他页面的各种内部和外部链接
  • 正确选项卡网页上字段的顺序
  • 应验证强制和可选字段的正面和负面输入
  • 应验证每个Web字段的默认值
  • 电子邮件功能是针对网站上的某些操作实施的 网站与搜索引擎兼容非常重要。 因此,我们应该检查网站的HTML语法正确性,格式和合规性标准,如WS-I,ISO和ECMA。

考虑用于维护登录会话的cookie,应通过启用/禁用cookie或使用不匹配的域来测试网站。 通过重置cookie以使浏览器恢复到vanilla状态,还可以跨会话执行测试。

质量保证还应验证网站cookie始终以加密格式存储在本地。

考虑到我们的电子商务网站,如果用户导航到预期,应点击并验证网页上提供的各种链接,如男士时装,女士时装,儿童时装,家居饰品,电子产品,书籍,电影和音乐等。页。

同样,登录,注册,搜索选项,过滤器,排序,添加到购物车等不同的功能应该在不同的网页上进行验证,如登录页面,注册页面,产品详细信息页面,购物车,订单审查,付款等。应检查网站的会话/ cookie管理,如会话到期和会话存储等。

最终用户是否会发现网站易于浏览?

必须执行可用性测试,以便在可访问性,可搜索性和有用性等环境中衡量最终用户的网站易用性。

下面提到的是在为网站执行可用性测试时应该验证的一些测试场景:

  • 网站内容应具有信息性,结构化和逻辑链接,以便用户轻松理解
  • 网页控件应该易于用户导航
  • 该网站应上传帮助和指令文件
  • 该网站应具有搜索功能,以方便最终用户
  • 应该在主菜单中访问所有页面
  • 任何拼写错误都应验证网站内容
  • 网站应遵循背景颜色,图案,样式,字体,图像放置,框架,边框等背景中的定义指南。
  • 该网站应该习惯于翻译功能,因为它可以被来自不同国家的用户以不同的语言,货币等访问。 可用于执行可用性测试的工具很少是用户缩放和扩展 。

电子商务网站应该是客户友好的,易于浏览和引人注目的。 应验证所有网页的可访问性,字体,样式,图像,拼写错误和产品相关信息。 网站应配备相关的帮助文档和客户支持设施。

考虑到基于触摸屏的界面的增加,我们需要验证关键输入和触摸屏输入的可访问性。 同样,应该验证图像和网站内容的可用性,以适应不同的屏幕尺寸(手机,笔记本电脑和标签等)。

网站是否可以在最终用户拥有的不同设备上访问?

假设我们的网站可以被一系列不同设备的用户访问,我们需要确保网站在所有设备上运行良好,没有任何故障。

为确保相同,应进行兼容性测试的网站兼容性检查。 在网站的兼容性测试期间,确保网站在不同的浏览器,笔记本电脑,手机,平板电脑,打印机等操作系统和设备上运行良好。

浏览器兼容性(跨浏览器测试):

该网站应该适用于不同的浏览器,如Microsoft Internet Explorer,Microsoft Edge,Firefox,Google Chrome,Safari和Opera。 应该通过打开/关闭不同的浏览器功能来验证这些浏览器的所有活动版本。

此外,在执行跨浏览器测试时 ,QA还应检查跨浏览器的最佳网站性能。

操作系统兼容性(跨平台测试):

为了识别潜在的用户体验问题,应在Windows,Linux,Unix.MAC,Solaris等各种平台上测试网站,以确保操作系统兼容性。

设备兼容性(跨设备测试):

一个网站可以通过不同的设备浏览,如笔记本电脑,手机,平板电脑等,提供不同的操作系统,如iOS,Android,Windows等。因此,测试应该在设备上进行,也包括以下场景。

  • 网站屏幕大小应根据设备进行调整
  • 设备应该是屏幕旋转功能
  • 网站不应在不同网络速度的不同设备上显示任何加载问题
  • 在设备进入/退出网络范围时验证网站行为
  • 验证低CPU和内存上的网站行为以支持不同的外形

对于电子商务网站来说,兼容性检查是最重要的测试类型之一。客户基础将是巨大的,并将访问我们的网站从不同的浏览器,操作系统和设备。

考虑到移动平台的日益普及,我们应该确保网站在可接受的加载时间内以较小的形式加载。验证不同网络速度的使用也很重要,以确保它对所有客户都可用。

网站足够安全吗?

执行安全测试以发现系统中的漏洞并确保网站安全。

以下是执行安全测试时可以验证的清单:

  • 只有经过身份验证的用户才能访问该网站
  • 网站用户应该只能执行他们授权的任务
  • 应验证网站的CAPTCHA字段以便用户识别
  • 在从安全页面移动到不安全页面时,应验证浏览器安全设置
  • Web服务器保护应该存在于无法访问的Web目录或文件中
  • 确保在没有适当访问权限的情
  • 失效的会话应在一段时间后自动被杀死
  • 应记录最终用户的所有无效和未经授权的尝试或间歇性系统错误/故障以进行分析

Retina CS Community ,Veracode和SQL Map等工具可用于对您的网站进行安全测试。

作为安全测试的一部分,应该验证电子商务网站

  1. 网站访问控制。
  2. 任何用户个人信息泄露。
  3. 安全付款方式。

网站性能是否达到了标准?

要检查网站的性能,可以进行性能测试。 它将评估应用程序在各种工作负载条件下的行为,这可能是一个现实的情况。 如果系统在没有进行性能测试的情况下上线,最终可能会出现系统运行缓慢或可用性差等问题,这些问题可能会影响品牌形象以及市场销售。

可以针对负载和压力测试网站。

下面给出了Web性能测试的清单:

应在正常和峰值负载条件下观察网站行为 应通过测量响应时间,速度,可扩展性和资源利用率来检查网站的性能 如果系统在任何时间点发生故障或变得不稳定,应使用解决方案进行适当的RCA(根本原因分析) 如果有的话,应该识别网络延迟问题 电子商务网站应该在正常和高峰负载条件下使用一组模拟用户进行彻底测试,这些情况可以在“销售季节”期间进行。

在销售期间,访问该网站的用户将成倍增加。此外,应检查网站行为,同时多个并发用户访问相同的项目或在网站上执行相同的操作(如交易或下订单)。

市场上有各种可用于性能测试的工具。其中很少是LoadRunner,WinRunner, Silk Performer,JMeter等。

在网站上输入的数据是否准确存储并在会话中持续存在?

该数据库是Web应用程序的关键组件之一,它包含通过网站输入的完整信息。因此,为了确保正确的用户数据在没有任何操作的情况下保存在数据库表中,并且应该在验证之下保持数据完整性。

  • 验证用户界面(即网站UI和数据库)的数据一致性
  • 每当网站应用程序执行插入/更新/删除操作时,验证数据库表是否正确更新
  • 验证技术查询的响应时间并根据需要对其进行微调

检查数据库连接和访问权限

作为测试电子商务网站的QA团队成员,您可以执行以下活动并在相应的数据库表中每次验证更改。这将确保网站UI和DB都一致。

  1. 下达产品订单。

  2. 取消产品。

  3. 选择交换产品。

  4. 选择退货产品。

该网站是否与工作流程中的其他界面很好地集成?

执行接口级别测试以检查网站与Web服务器和数据库服务器等不同接口的平滑交互。

在接口测试期间,测试人员需要确保是否正确地将应用程序请求发送到数据库,并将正确的信息作为输出显示给客户端。Web服务器不应该在任何时候抛出任何拒绝异常,并且数据库应始终与应用程序保持同步。

即使在上线后网站也能按预期运行吗?

一旦产品进入生产环境,应进行定期检查以检查质量控制。

在生产中验证产品时,可以考虑以下方案:

  • 应定期执行Web应用程序测试,并将测试日志保存为符合服务级别协议(SLA)的证明
  • 应检查自动缩放系统和负载平衡器是否到位和正常运行
  • 检查最终用户体验并尝试发现在QA测试期间通常不会被注意到的缺陷或恶意攻击
  • 监控峰值负载期间的产品响应时间
  • 实时执行边缘级别测试用例,以识别网络故障,连接故障或意外呼叫中断

结论

我用我多年测试不同网站的经验起草了这个详细的教程。

希望本文可以帮助您了解Web应用程序测试的不同方面。下次您坐下来为您的网站编写测试计划时,请记住验证网站功能之外的各个方面