[Selenium] Android HTML5 中 Application Cache

HTML5 中引入了 Application Cache,這意味着 Web 應用程序能夠被緩存到本地,且可在沒有網絡的狀況下也能訪問該 Web 應用程序html

Application Cache 在如下3個方面具備明顯優點html5

1.離線瀏覽:在沒有網絡狀況下用戶也可以使用 Web 應用程序android

2.速度快:緩存的資源被加載時速度很快瀏覽器

3.服務器負載小:瀏覽器只會從服務器更新有變化或新增的資源緩存

確認 Web 應用程序是否使用了改緩存特性的最簡單方式就是直接查看網頁 HTML 代碼,若是其源碼中具備以下包括 manifest  屬性的標籤則說明使用了 Application Cache 特性服務器

<! DOCTYPE HTML>網絡

<html manifest="demo.appcache">app

...ui

</html>htm

Selenium WebDriver 具備一個名爲 AppCacheStatus 的枚舉量,用於標記當前 Application Cache的狀態,包括 0(UNCACHED)、1(IDLE)、2(CHECKING)、3(DOWNLOADING)、4(UPDATEREADY)、5(OBSOLETE)

下面以獲取當前 Web 應用程序的緩存狀態爲例 展現對 Application Cache 的接口如何使用

package com.learingselenium.android;

import static org.junit.Assert.assertEquals;

import org.junit.Test;

import org.openqa.selenium.WebDrivver;

import org.openqa.selenium.android.AndroidDriver;

import org.openqa.selenium.html5.AppCacheStatus;

import org.openqa.selenium.html5.ApplicationCache;

...

WebDriver driver = new AndroidDriver("http://localhost:8888/wd/hub");

driver.get("http://w3school.com/html/tryhtml5_html_manifest.htm");

AppCacheStatus status = ((ApplicationCache) driver).getStatus();

assertEquals(status, AppcacheStatus.DOWNLOADING);

System.out.println("Application Cache's status is : " + status.toString());

driver.quit();

...

相關文章
相關標籤/搜索