浏览器刷新的逻辑和测试方法

发表于:2012-5-14 10:53

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:tiechi    来源:TaoBao QA Team

  浏览器的刷新有2类

  第1类:普通刷新。会首先从缓存中加载内容,缓存中已过期部分内容会从服务器重新请求。

  第2类:强制刷新(刷新缓存和页面)。会从服务器重新请求所需要加载的内容

  第2类刷新的情况:

  1)快捷键CTRL + F5

  2)按键CTRL + 点击工具栏刷新按钮

  3)按键CTRL + 点击地址栏右侧刷新按钮

  第1类刷新的情况:

  1)点击工具栏刷新按钮

  2)点击地址栏右侧刷新按钮

  3)网页中右键菜单,点击刷新按钮

  4)菜单:查看->重新载入

  5)快捷键F5

  6)快捷键SHIFT + F5

  7)通过鼠标手势刷新

  8)按键CTRL + 网页中右键菜单,点击刷新按钮

  9)按键CTRL + 菜单:查看->重新载入

  10)Webkit核下,快捷键CTRL + R

  那么这两类刷新在测试过程中应该如何测试呢?在微软的官网上可以看到下面的描述:

  REFRESH_NORMAL

  Refresh without sending a “Pragma:no-cache” HTTP header to the server.REFRESH_IFEXPIRED

  Not currently implemented.REFRESH_COMPLETELY

  Refresh without forced cache validation by sending a “Pragma:no-cache” header to the server (HTTP URLs only). Same as pressing Ctrl+F5 in Microsoft Internet Explorer.

  原文摘录至:http://download.taobaocdn.com/client/browser/download.php

  实际测试中采用wireshark进行测试,当打开相应网址的时候用wireshark捕获相应的消息,查看http消息中的内容,其中 [Hypertext Transfer Protocol]中包含值 [Cache-control:no-cache]为强制刷新,不包含[Cache-control:no-cache]的为普通刷新。

  其中 http1.0以“pragma: no-cache”为准  http1.1的以 ”Cache-Control: no-cache”为准,实际情况列举如下:

  服务器支持http 1.1的情况下  不发pragma:no-cache  只有Cache-Control: no-cache

  服务器支持 http 1.0的情况下 只发pragma:no-cache

  不知道服务器是否支持http 1.1时  两者都发

《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • seanmon
    2012-11-02 10:56:32

    很受用

  • janeto1
    2012-6-20 14:23:42

    受教了,好东西

  • luoyuyan716
    2012-5-15 09:45:30

    第一次听说强制刷新,学习了,谢谢

  • zhuruize
    2012-5-14 13:28:23

    学习了!以前真不知道,谢谢!

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号