Cookie 测试:网站测试用例示例
Cookie的基础知识
我们将首先讨论cookie是什么以及它们如何运作。
当您了解cookie的运作方式后,您将更容易理解测试cookie的测试用例。Cookie怎么会最终出现在您的计算机硬盘上?另外,我们如何更改我们的Cookie首选项?
什么是饼干?
cookie是网络服务器存储在用户硬盘上的文本文件中的一小段数据。然后,Web浏览器使用此信息从该机器获取信息。
通常,cookie包括用于跨网站通信的定制用户数据或信息。
cookie的目的是什么?
Cookie只是用户的身份识别信息,用于监控用户在网站页面上的浏览位置。Web浏览器和Web服务器之间存在无状态通信。
举个例子
如果您访问域http://www.example.com/1.html,您的Web浏览器将简单地向example.comWeb服务器询问页面1.html。如果您下次将页面编写为http://www.example.com/2.html,则会向example.comWeb服务器发出新的请求以发送该2.html页面,而Web服务器不知道前一个页面是谁。html被提供给。
如果您想查看该用户与网络服务器交互的历史记录怎么办?在某个地方,必须维护Web浏览器和Web服务器之间的用户状态和交互。这就是cookie发挥作用的时候。Cookie用于保持用户与网站的互动。
Cookie测试究竟是什么?
Cookie测试是一种软件测试形式,用于检查您的网络浏览器中生成的cookie。cookie是网络服务器存储在用户(客户端)硬盘上的文本文件中的一小段信息。每次浏览器从服务器请求一个页面时,该信息都会被传输回服务器。Cookie通常包括用于在网站之间进行通信的定制用户数据或信息。下面的屏幕截图显示了各种网站上的cookie。
换句话说,cookies只不过是用户的身份证明,用于监控用户浏览网站页面的位置。cookie的目的是允许用户和网站快速沟通。Cookie可用于提供购物车、个性化在线体验、用户跟踪、营销、用户会话和其他应用程序。
Cookie的功能是什么?
用于在Internet上传送信息文件的HTTP协议用于保存cookie。
HTTP协议分为两类。有两种HTTP协议:无状态HTTP和有状态HTTP。无状态HTTP协议不跟踪以前访问过的网页。虽然有状态HTTP协议确实保留了先前Web浏览器和Web服务器交互的一些历史记录,但cookie使用该协议来维护用户交互。
当用户访问使用cookie的站点或页面时,该HTML页面中包含的小代码(通常调用某种语言脚本来编写cookie,例如JAVAScript、PHP或Perl中的cookie)会创建一个文本文件。
当用户返回同一页面或站点时,该cookie将从光盘中检索并用于识别用户对该域的第二次访问。过期时间在创建cookie时设置。该时间由将使用cookie的程序设置。
一般而言,用户的计算机上存储有两种类型的Cookie。
SessionCookies-只要设置它的浏览器打开,此cookie就会保持活动状态。当我们退出浏览器时,此会话cookie将被删除。有时可以将cookie配置为在20分钟会话后过期。
PersistentCookies-这些cookie无限期地存储在用户的计算机上,可以持续数月或数年。
Cookie的内容是什么?
cookie由三个主要部分组成。
发送cookie的服务器的名称
Cookie的生命周期
货币价值。这通常是随机创建的独一无二的数字。
cookie保存在哪里?
任何编写cookie的网页程序都将其保存在用户硬盘驱动器上的文本文件中。cookie的位置由浏览器决定。Cookies被不同的浏览器存储在不同的路径中。
例如,可能会在MozillaFirefox的浏览器设置中看到Cookie。要查看它,请转到工具->选项->隐私,然后“删除个人Cookie”。
Cookie存储在InternetExplorer浏览器中的位置“C:\DocumentsandSettings\DefaultUser\Cookies”。
如何对Cookie进行测试
以下是有关如何在网站上测试cookie的重要清单和分步指南-
必须禁用Cookie-禁用所有cookie并尝试利用站点的主要功能。
Cookiestainted-在记事本中手动修改cookie并用一些任意参数替换参数。
加密cookie-例如,密码和用户名应在传输到我们的计算机之前进行加密。
使用各种浏览器进行Cookie测试-检查您的网页是否按预期在单独的浏览器上正确写入Cookie。
检查从您的Web应用程序页面中删除-
逐案拒绝Cookie-删除所有网站的cookie并查看网站的行为。
Cookie是可访问的-由一个网站创建的Cookie不应被其他网站访问。
不应过度使用Cookie-如果被测程序是公共网站,则不应过度使用Cookie。
尝试各种设置-应彻底进行测试以确保网站在各种cookie设置下正常工作。
单独分类cookie-cookie不应与病毒、垃圾邮件或恶意软件归为同一类别。
针对多环境站点的特定测试
一个特定的测试检查是否在多环境站点的所有环境中都允许使用相同的Cookie。Cookie路径中通配符的使用可能是原因(所谓的超级cookie)。如果这是必要的,由于使用了替代加密密钥,可能会出现某些访问困难(对于.Net,除非另有说明,否则它通常是唯一的机器密钥)。
这些是评估网站cookie时需要牢记的一些最重要的测试场景。您可以通过以不同方式组合这些测试用例来创建许多测试用例。如果您有其他应用情况,请在下面的评论部分中分享。
Cookie可以通过以下方式使用-
实施购物车-Cookie用于保持在线订购系统平稳运行。Cookie会跟踪用户希望购买的商品。如果消费者将某些商品添加到他们的购物车中,然后由于某种原因决定这次不购买并关闭浏览器窗口怎么办?当同一用户返回购买页面时,他将能够看到上次访问时放入购物篮的所有商品。
个性化网站-当一个人查看某个网站时,他们会被问到他们不希望看到哪些其他页面。用户首选项保存在cookie中,这些页面在用户在线之前不会显示给用户。
用户跟踪-计算任何时候在线的唯一访问者的数量。
广告-一些企业使用cookie在用户计算机上显示广告。这些广告由cookie控制。何时以及如何展示广告?用户的观点是什么?他们在网站上查看哪些关键字?Cookie可用于跟踪所有这些内容。
用户会话-使用用户ID和密码,cookie可以监控用户会话到某个域。
饼干的缺点
虽然编写Cookie是保持用户参与度的好方法,但如果用户在编写任何Cookie之前将浏览器设置为警告他们或完全禁用了Cookie,则包含该Cookie的站点将被完全禁用且无法执行任何操作,从而导致在网站流量的损失。这可能会在您的浏览器设置中关闭或打开。例如,对于GoogleChrome,转到设置->高级->内容设置->Cookie。您可以将cookie政策应用于所有网站或为特定网站设置。除了浏览器设置之外,欧盟和美国法规的变化还要求开发人员通知用户他们的网站正在使用cookie。特定领域的测试场景中应包括遵守此类新规则。
ToomanyCookies-如果您在每个页面导航上写入太多Cookie,并且用户启用了在写入Cookie之前发出警告的选项,这可能会使用户远离您的网站。
安全问题-有关用户的个人信息有时会保存在Cookie中,如果Cookie被黑客入侵,黑客可以访问您的个人信息。即使损坏的cookie也可以被多个网站读取,从而带来安全风险。
敏感信息-一些网站可能会在cookie中写入和保存有关您的敏感信息,由于隐私问题,这是不允许的。这应该足以了解什么是Cookie。