2010-09-17 21 views
0

試圖做一些簡單 - 我有一組語句來明確瀏覽器Cookie:硒RC用戶定義函數

public void clearCookies() { 
    selenium.open("http://www.myurl.com"); 
    selenium.waitForPageToLoad("10000"); 
    selenium.deleteAllVisibleCookies(); 
    } 

現在,如果我在一個測試腳本使用此功能(用TestNG),調用完美地完成這項工作。但是,如果我將此函數移至單獨的類並將聲明更改爲包含「static」,則不會識別「selenium」關鍵字。

在配置類(說configClass),

public static void clearCookies() { 
    selenium.open("http://www.myurl.com"); 
    selenium.waitForPageToLoad("30000"); 
    selenium.deleteAllVisibleCookies(); 
    } 

現在,在我的測試腳本,如果我叫configClass.clearCookies();,我得到一個運行時錯誤 我試着聲明DefaultSelenium selenium = new DefaultSelenium(null);,在clearCookies()函數,但是這也會導致運行時錯誤。我在configClass中導入了import com.thoughtworks.selenium.*;

任何指針,將不勝感激。謝謝。

回答

1

你可以做兩件事。

在兩個類中引用相同的硒對象,即在configClass和您調用configClass.clearCookies()的類中。

或其他

將硒對象發送到clearCookies。因此,代碼會是這樣

公共靜態無效clearCookies(DefaultSelenium硒){

selenium.open("http://www.myurl.com"); 
selenium.waitForPageToLoad("30000"); 
selenium.deleteAllVisibleCookies(); 

}