TestNG中一个类中有多个测试方法的时候,多个测试方法的执行顺序或者依赖关系的问题。如果不用dependsOnMethods,testNG会自动根据@Test方法名称的首字母排序来执行测试方法。
package test;
import static org.testng.Assert.assertTrue;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
public class TestDepend {
WebDriver driver;
@BeforeClass
public void setuo(){
System.setProperty("webdriver.chrome.driver", ".\\Tools\\chromedriver.exe");
driver = new ChromeDriver();
driver.manage().window().maximize();
}
@Test
public void openBaidu() throws InterruptedException{
driver.get("https://www.baidu.com");
Thread.sleep(2000);
System.out.println(driver.getTitle());
//assertTrue(driver.getTitle() == "百度一下,你就知道");
}
@Test(dependsOnMethods={"openBaidu"})
public void testSearch() throws InterruptedException{
driver.findElement(By.id("kw")).sendKeys("Selenium");
driver.findElement(By.id("su")).click();
Thread.sleep(1000);
}
@Test(dependsOnMethods={"testSearch"})
public void testSearch2(){
driver.findElement(By.id("kw")).clear();
driver.findElement(By.id("kw")).sendKeys("Selenium+Java");
driver.findElement(By.id("su")).click();
}
@AfterClass
public void tearDown(){
driver.quit();
}
}
上面先后顺序是1)打开百度 2)搜索selenium 3)搜索selenium+java,如果想看看不用依赖关系,注销依赖部分代码,执行一下,看看是不是按照字母顺序执行。
博客主要讨论TestNG中一个类有多个测试方法时,其执行顺序和依赖关系问题。若不用dependsOnMethods,TestNG会按@Test方法名称首字母排序执行。还给出如打开百度、搜索selenium等测试示例,可注销依赖代码查看按字母顺序执行情况。

1140

被折叠的 条评论
为什么被折叠?



