2011-04-07 99 views
5

我正在開發一個使用python使用selenium api的自動化測試腳本。但是當我從selenium rc運行腳本時,它會進入登錄頁面。我如何能夠在該頁面上輸入我的用戶名和密碼,因爲它不包含任何會話或cookie?如何使用Selenium登錄需要用戶名和密碼的網站?

+1

不知道我是否理解你的問題。但你可以使用「type」方法鍵入用戶名和密碼, – Tarun 2011-04-07 08:25:14

回答

5

那是因爲硒服務器每次啓動瀏覽器的新配置文件,所以您保存的cookie和書籤不存在於此配置文件中。

首先創建一個配置文件,爲Firefox它被賦予here

然後捆綁此配置文件,您的硒服務器這樣

SeleniumServer server = new SeleniumServer(); 
    RemoteControlConfiguration rcc = new RemoteControlConfiguration(); 
    //rcc.setPort(4444); 
    File newFirefoxProfileTemplate = new File(ReadConFile.readcoFile("fiefoxProfilePath")); 

    rcc.setFirefoxProfileTemplate(newFirefoxProfileTemplate); 
    server = new SeleniumServer(rcc); 
    server.start(); 
    DefaultSelenium selenium = new DefaultSelenium("localhost", 4444, "*chrome",ReadConFile.readcoFile("serverName")); 

知道你firefoxTemplate點擊here

8

這裏的建議,是由Selenium IRC頻道上的Adam Goucher製作的(irc://irc.freenode.net/selenium):

充分利用完全乾淨的瀏覽器緩存/ cookie歷史記錄的情況。編寫你的測試來做登錄。

但是,不要在用戶名和密碼中硬編碼到您的代碼中,而要在用戶名和密碼存儲在客戶端的本地客戶端和密碼本地保留故意不帶源代碼修訂的配置文件, Selenium客戶端代碼在執行Selenium代碼時從中檢索用戶名和密碼。

+0

PS也檢查了這一點:https://github.com/adamgoucher/php-selenium-pageobjects – 2011-07-11 22:41:56

相關問題