可以在运行时将值传递给测试方法,可以通过 testng.xml 文件发送参数值来实现。我们可以使用 @Parameter
注解:
@Parameter("param-name");
让我们通过一个例子来理解:
package com.yiibai;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.Test;
import org.testng.annotations.Parameters;
public class Web {
@Parameters({"text"})
@Test
public void search()
{
// TODO Auto-generated method stub
System.setProperty("webdriver.chrome.driver", "D:\chromedriver.exe");
WebDriver driver=new ChromeDriver();
driver.get("http://www.yiibai.com/");
driver.findElement(By.name("q")).sendKeys("javat tutorial");
}
}
testng.xml 文件 -
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite">
<test name="It Company">
<parameter name="text" value="yiibai"/>
<classes>
<class name="com.yiibai.Web"></class>
</classes>
</test>
</suite> <!-- Suite -->