如何在拼错的数据提供者上测试失败?

时间:2014-09-08 13:21:10

标签: java unit-testing testing testng

testNg按名称(字符串)绑定数据提供者。当我拼错它时,它恢复了成功。只是没有运行测试。是否有任何配置选项在发生此类错误时快速失败?

1 个答案:

答案 0 :(得分:0)

实际上,当测试用例找不到其数据提供者时(在您拼写错误的数据提供者名称的情况下会发生),将跳过该测试用例。因此,没有进行任何测试。您需要的是一种查看跳过的测试用例的方法。

您可以在跳过测试时打印消息或抛出异常。但是,可能不建议抛出异常,因为它可能会在第一次跳过测试后停止构建,并且整个测试套件可能仍未经过测试。

方法1 您需要实现提供方法

的ITestListener
   onTestSkipped(ITestResult testResult)

方法2 TestNG还允许您在测试运行结束时生成报告。你需要实现

 IReporter interface

您需要为generateReport()方法编写代码。

对于上述两种方法,您需要将实现类配置为testng.xml中的侦听器,如下所示。

<listeners>
    <listener class-name="com...test.reporter.TestStatusReporter" />
</listeners>

下一步 一旦你运行

mvn install 

并且成功,您可以在项目的以下位置查看测试结果,包括跳过的测试详细信息。

../target/surefire-reports/index.html

希望这有帮助。