環境: Eclipse、Selenium-webdriver 2.31、Junit4。私はいくつかのスクリプトを変更しています.nこのスニペットを実行すると、クロムのブラウザが2回起動されます.これは明らかですが、クロムを1回だけ起動してテストメソッドを実行する方法がわかりません. 私を修正してください。
これは、パラメーターが渡される LoginPage クラスです。ここで WebDriver インスタンスを初期化しないと、NPE Exception がポップアップします。
コード :
@RunWith(Parameterized.class)
public class LoginPage{
WebDriver driver = new ChromeDriver();
String username;
String password;
public LoginPage(String username, String password)
{
this.username = username;
this.password = password;
}
@Test
public void loginAs(){
user.sendKeys(this.username);
pass.sendKeys(this.password);
}
}
スイートクラスが言及されているスイートクラスです。リンククラスは別のクラスです。
TestSuite クラスコード:
@RunWith(Suite.class)
@SuiteClasses({
LoginPage.class, Link.class
})
public class LoginTest{
static WebDriver driver;
@BeforeClass
public static void start()throws Exception
{
System.setProperty("webdriver.chrome.driver", "E:/Selenium/lib/chromedriver.exe");
driver = new ChromeDriver();
driver.get("URL");
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
System.out.println("Before Class");
}
@AfterClass
public static void teardown()
{
//
}