测试方法和环境同 html5中manifest特性测试(一)
一、测试内容
1.manifest文件改动后,浏览器在什么时候更新缓存?
2.一个新页面使用已有的manifest文件(其他页面使用的,并且已经创建好缓存),初次访问时,会引起整个缓存更新吗?
二、详细测试
1.manifest文件改动后,浏览器在什么时候更新缓存?
使用测试(一)的cache.html, m.js, m.manifest三个文件。js版本号1。
测试过程:
访问cache.html,确保缓存数据是最新的;
修改m.js让版本号为“2”,并修改m.manifest文件(改动一下注释即可);
刷新cache.html, 查看js版本是“1”,但chrom的console提示更新缓存了;
修改m.js让版本号为“3”,再次刷新cache.html, 查看js的版本号是“2”,chrom的console没有提示有缓存更新;
修改m.js让版本号为“4”,再次刷新cache.html, 查看js的版本号是“2”.
测试结论:浏览器检测到manifest文件有变化时,会更新缓存,但更新策略是先读取旧缓存显示出来,然后再更新。
2.一个新页面使用已有的manifest文件(其他页面使用的,并且已经创建好缓存),初次访问时,会引起整个缓存更新吗?
在上一个测试的基础上,继续测试。
测试过程:
新建文件cache3.html,代码同cache.html;
访问cache3.html,查js版本号结果为“4”(最新文件的版本号);
修改m.js代码使版本号为“5”,刷新cache3.html,查看js版本号结果为“2”(缓存里的版本号);
测试结论:新页面使用旧manifest文件,初次访问时,不会造成旧缓存数据更新,并且加载的是实时加载线上资源的。再次访问时将使用旧缓存数据。