2015-09-26 39 views
2

我一直在Selenium IDE中創建一些測試,但我現在已決定遷移到Selenium Webdriver和Java。我正在研究使用java和Selenium Webdriver創建一個煙霧測試,它將通過一個站點導航並驗證頁面是否顯示成功。理想情況下,我希望能夠在不同的網站上使用煙霧測試。Selenium webdriver從外部文件加載鏈接

爲此,我最初的想法是將鏈接,按鈕等定位器保存在外部文件中,並確定使用什麼方法(例如單擊,選擇等)。代碼將使用文件中的信息,然後瀏覽該網站並報告該頁面是否成功顯示。

我在Selenium IDE中設法做了一個類似的方法,並使用幾個插件創建了一個基本版本,但我在報告和錯誤處理方面相當有限。我通過一個外部文件來完成這項工作,其中包括定位器和一個數字來標識命令。這些存儲在變量中,我使用if語句來選擇是否需要clickAndWait,click或select命令。

我想知道是否有人可以告訴我這是否可以使用Java和Selenium Webdriver完成?如果可以做一些指導如何?

+0

你問的數據驅動的測試情況下,Java的無線網絡寫作th硒Webdriver?有人建議[http://www.toolsqa.com/](http://www.toolsqa.com/)。你會在那裏得到解決方案。 – MKay

回答

0

在java中你.txt/.JSON甲 在這裏,我給與.txt文件

input1.txt 例如讀取外部文件中輸入:

http://www.stackoverflow.com 
http://www.website1.com 
(硒網站網址前的 'http //')

代碼

public class test1 { 
public static void main(String[] args) throws InterruptedException,IOException { 
String s1 = new String(Files.readAllBytes(Paths.get("C:\\input1.txt"))); 
String[] URL = s.split(System.getProperty("line.separator")); 
WebDriver driver = new FirefoxDriver(); 


for(int i=0;i<URL.length;i++){ 
    driver.get(URL[i]); 
    driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS); 

try { \\Your own validation logic. 
    driver.getPageSource().contains(" <Some KEY_WORD> ") 
    System.out.println(URL[i]+" is a valid"); 
    } 

catch (Exception e) { 
    System.out.println(URL[i]+" is a not-valid url"); 
    } 
}}