如何在java中使用testng注释

时间:2015-05-07 12:38:52

标签: java annotations testng selendroid

我的代码

public class Test{

  @BeforeTest
  public void create_user throws Exception (){

  }

  @Test
    public void user_actions throws Exception (){

  }

  @AfterTest
  public void delete_user throws Exception(){

  }

}

以上是我的测试课程。如果我在create_user()中收到任何错误,当前它会抛出Exception并且用完测试用例。

但我需要执行delete_user()而不管create_user()user_actions()

中的任何错误

3 个答案:

答案 0 :(得分:4)

尝试@AfterTest(alwaysRun = true)

来自TestNG doc

  

对于after方法(afterSuite,afterClass,...):如果设置为true,即使先前调用的一个或多个方法失败或被跳过,也会运行此配置方法。

答案 1 :(得分:0)

如果期望测试异常,您可以使用@expected通知测试有关确保调用delete_user的异常。 如果是一个adhoc异常,最后阻止delete_user是一个很好的做法。

答案 2 :(得分:0)

如果测试方法应该出现异常,请使用以下注释:

@Test(expectedExceptions=<your exceptions here>)
public void user_actions throws Exception (){
    // 
}

如果测试方法引发意外异常,我建议您查看测试设置/方法。