2017-03-17 18 views
-2

我已經在Eclipse中創建項目(頁對象模型)這樣TestNG的硒------表明其註解是適合

項目名稱 包1 SRC 斌 包2 SRC 斌

在封裝1包含,元件的描述和方法 在包2包含,

BaseScript.java --------- PRECO nditon

webdriver driver=new FirefoxDriver(); 

     driver.get("url"); 
     driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS); 

     driver.manage().window().maximize(); 
     LoginPage l=new LoginPage(driver); 
     l.setusername(""); 
     l.setpassword(""); 
     l.LoginBut(); 

Postconditons

driver.quit();

我有T1.java,T2.java和轉換into.xml(testng.xml文件)和運行用TestNG該文件(的testng.xml)

我想在每次與一個瀏覽器執行所有測試用例但我得到當我執行測試用例它調用BaseScript.java

回答

1

Selenium是一個工具,它可以像用戶一樣控制瀏覽器/網站。它模擬用戶點擊頁面。瞭解您的Web應用程序的功能,您可以設置您的測試。現在運行一組測試用例,即測試套件。 TestNG提供了此功能來管理測試執行。

我建議你閱讀這個簡單的tutorial來設置TestNG測試套件。

我希望一次

硒電網是硒套房並行運行測試的一部分執行所有測試用例。在安裝在底座班組長

public class TestBase { 

protected ThreadLocal<RemoteWebDriver> threadDriver = null; 

@BeforeMethod 
public void setUp() throws MalformedURLException { 

    threadDriver = new ThreadLocal<RemoteWebDriver>(); 
    DesiredCapabilities dc = new DesiredCapabilities(); 
    FirefoxProfile fp = new FirefoxProfile(); 
    dc.setCapability(FirefoxDriver.PROFILE, fp); 
    dc.setBrowserName(DesiredCapabilities.firefox().getBrowserName()); 
    threadDriver.set(new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), dc)); 
} 

public WebDriver getDriver() { 
    return threadDriver.get(); 
} 

@AfterMethod 
public void closeBrowser() { 
    getDriver().quit(); 

} 
} 

駕駛員樣品測試的一個例子是:

public class Test01 extends TestBase { 

@Test 
public void testLink()throws Exception { 
    getDriver().get("http://facebook.com"); 
    WebElement textBox = getDriver().findElement(By.xpath("//input[@value='Name']")); 
    // test goes here 
} 
} 

可以如上

public class Test02 extends TestBase { 

@Test 
public void testLink()throws Exception { 
    // test goes here 
} 
} 

TestNG的配置以類似的方式添加更多的測試:

testng.xml

<suite name="My Test Suite"> 
<suite-files> 
    <suite-file path="./testFiles.xml" /> 
</suite-files> 

testFiles.xml

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> 
<suite name="Parallel test runs" parallel="tests" thread-count="2"> 

<test name="T_01"> 
    <classes> 
    <class name="com.package.name.Test01" ></class> 
    </classes> 
</test> 

<test name="T_02"> 
    <classes> 
    <class name="com.package.name.Test02" ></class> 
    </classes> 
</test> 

<!-- more tests --> 

</suite> 
+0

我知道如何轉換的testng.xml,但我對混亂的註解 – SenthilKumarP