请找到以下简单程序:
package com.temp.practice;
import org.testng.SkipException;
import org.testng.annotations.Test;
@Test
public class Exp1
{
public void e1()
{
System.out.println("Excpetion Test1");
throw new SkipException("e1--- The test cases is not executed");
}
}
如果我执行上面的代码,我会按预期在控制台中收到SkipException
。
但是当我在三个不同的类中使用相同类型的代码并批量执行它们时,控制台中不会捕获跳过异常。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="SuiteName" >
<test name="ITest">
<classes>
<class name="com.temp.practice.Exp1"/>
</classes>
</test> <!-- TestB -->
<test name="StroSearch">
<classes>
<class name="com.temp.practice.Exp2"/>
</classes>
</test> <!-- TestB -->
<test name="full">
<classes>
<class name="com.temp.practice.Exp3"/>
</classes>
</test> <!-- TestB -->
</suite> <!-- SuiteName -->
可能是什么原因?
答案 0 :(得分:1)
问题是您没有在套件xml中指定详细级别。只有在套件xml中定义了2或更多的详细程度时,才会打印Stacktraces。所以要看堆栈跟踪
int newNumber = (10 + number - 2) % 10;
<suite name="SuiteName" >
然后再试一次。您应该在控制台上看到异常堆栈跟踪。