2015-06-20 42 views
0

如何通過硒/ Java來獲得HTML5應用程序緩存狀態如何通過硒/ Java來獲得HTML5應用程序緩存狀態

硒/ Java編程,硒/ Java的怎麼能得到的HTML5應用程序緩存的安全狀態?我在下面嘗試,但它沒有奏效。 「不能轉換爲org.openqa.selenium.html5.ApplicationCache。」

import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.firefox.FirefoxDriver; 
import org.openqa.selenium.html5.AppCacheStatus; 
import org.openqa.selenium.html5.ApplicationCache; 

public class Html5AppCache { 

    public void testHTML5LocalStorage() throws Exception { 

     WebDriver driver = new FirefoxDriver(); 

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

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

    } 

} 
+0

您是否使用過? Java是服務器端,應用程序緩存是客戶端.. –

+0

閱讀[AppCacheStatus](http://selenium.googlecode.com/svn/trunk/docs/api/java/org/openqa/selenium/html5/AppCacheStatus.html)和[ApplicationCache](http://selenium.googlecode.com/svn/trunk/docs/api/java/org/openqa/selenium/html5/ApplicationCache.html)的實現。 – Manu

回答

0

您鑄造短AppCacheStatus以下對象,因此錯誤。

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

ApplicationCache是一個接口,所以你必須編寫你自己的getStatus方法。

您可能想要使用JavaScriptExecutor獲取緩存狀態。希望有所幫助。

JavascriptExecutor jsExecutor = (JavascriptExecutor) driver; 
long cacheStatus = (long) jsExecutor.executeScript("return window.applicationCache.status;"); 
System.out.println(cacheStatus); 
相關問題