Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用dataprovider设置ExpectedException_Java_Exception_Testng_Expected Exception_Testng Dataprovider - Fatal编程技术网

Java 使用dataprovider设置ExpectedException

Java 使用dataprovider设置ExpectedException,java,exception,testng,expected-exception,testng-dataprovider,Java,Exception,Testng,Expected Exception,Testng Dataprovider,是否可以从@DataProvider在TestNG@Test中设置expectedExceptions选项?如果是,是如何做到的 以下是一个非直观的示例: @DataProvider private Object[][] methodABadArgsProvider() { return new Object[][] { {null, "arg2", "arg3"}, // expect NullPointerException {"arg1", null, "a

是否可以从
@DataProvider
在TestNG
@Test
中设置
expectedExceptions
选项?如果是,是如何做到的

以下是一个非直观的示例:

@DataProvider
private Object[][] methodABadArgsProvider() {
    return new Object[][] {
      {null, "arg2", "arg3"}, // expect NullPointerException
      {"arg1", null, "arg3"}, // expect IllegalArgumentException
      {"arg1", "arg2", null} // expect OperationNotSupportedException
    }
}

@Test(expectedException = [tbd].class, dataProvider = "methodABadArgsProvider")
public void methodABadArgs(String arg1, String arg2, String arg3) {
    testInstance.methodA(arg1, arg2, arg3);
}

DataProvider可以访问测试上下文。不可能通过dp来实现它;但如果AnnotationTransformer允许执行您需要的操作,则可以使用它