0

我创建了两个类。first.javasecond.java。在first.java中,我定义了一些 2 到 3 个方法。在中second.java,我想通过创建实例来使用这些方法first.java。我的场景如下:

  1. 在第一种方法中单击signbutton
  2. 使用 dataprovider 想要迭代,即在第二种方法中参数化
  3. 注销第三种方法。

在这里,第一种和第三种方法,即 @Test 应该运行一次,第二种方法 @Test(dataProvider) 应该迭代所有依赖

有没有办法在全局范围内声明或创建另一个类的实例?这样我就可以在所有方法中使用second.java还是有其他方法?

我正在使用TestNG,EcpliseWebdriver执行。

这就是正在做的事情:

@Test(dataProvider = "DP1")
  public void enteruserdetails(String username, String pass)
  {
           Spage spage = new Spage(driver);
           spage.clicksign();
           spage.enterdetails(username,pass);
           spage.signout(); 
  }

我想将此测试分为三个,以便:

1) spage.clicksign() will be done only once  
2) spage.enterdetails(username,pass) will use DataProvider for iteration
3)  spage.signout() will be done only once.

那么如何创建类的实例Spage spage = new Spage(driver);我必须在所有地方都这样做,@Before, @After and also in @Test或者有没有办法在全球范围内声明它?这里spage.java用于sfirst.java.

4

1 回答 1

0

您可以考虑将您的设置方法放在 BeforeXXX 方法中,将拆卸放在 AfterXXX 方法中。在您的情况下,您可以在使用 beforeclass 注释的方法中登录,类似地在使用 afterclass 注释的方法中注销。

@BeforeClass
public void signin(){
//clicksign
}

@Test
//the enter details and verifications

@AfterClass
public void signOut(){
//clicksignout
}
于 2013-01-19T07:08:39.673 回答