2010-07-26 78 views
1

我已經使用Selenium ide記錄測試用例,將它們導出到Groovy源代碼,根據需要進行修改並運行它們。默認代碼需要localhost上的服務器,我想在遠程機器上使用服務器。我怎樣才能做到這一點?在查看GroovySeleneseTestCase的文檔時,不會出現允許您使用遠程服務器的setUp()方法。我能想到的唯一選擇是通過setUp()方法中的默認硒對象設置服務器主機和端口,但不知道如何執行此操作。使用來自Selenium的遠程Selenium服務器編寫的Groovy測試用例

回答

0

在Java:

HttpCommandProcessor processor = new HttpCommandProcessor("localhost", 3300, browserName, appBaseURL); 

selenium = new CustomSelenium(processor, browserName, waitToLoadTimeout, waitForConditionTimeout); 
selenium.start(); 

只是通過服務器的地址和正確的端口替換本地主機和3300。我不知道Groovy,但它應該沒有太大的不同。當然,服務器必須先啓動並配置防火牆。

0

爲了得到這個工作,我不得不創建一個GroovySelenium的自定義實例,將其分配給測試類,而不是調用super.setUp方法。代碼示例如下。

void setUp(String selServer, int selPort, String browser, String basePath) throws Exception { 
def tempSel=new DefaultSelenium(selServer, selPort, browser, basePath) 
selenium= new GroovySelenium(tempSel) 
selenium.start() 
setDefaultTimeout(30000) 
setCaptureScreenshotOnFailure(false) 
} 

假設你有一個名爲MyTest的類此設置方法,要測試google.com使用硒服務器的主機名MYSERVER,端口5555,並使用Internet Explorer作爲瀏覽器下面的代碼會工作。

test=New MyTest() 
test.setUp("myserver",5555,"*iexplore","http://www.google.com") 
test.testMyTest() 
相關問題