- 监听器 实现接口 org.testng.ITestListener ,并且会在测试开始、通过、失败等时刻实时通知
- 报告器 实现接口 org.testng.IReporter ,并且当整个测试运行完毕之后才会通知。IReporter 接受一个对象列表,这些对象描述整个测试运行的情况
例如,如果你想要生成一个PDF报告,那么就不需要实时通知,所以用 IReporter。如果需要写一个实时报告,例如用在GUI上,还要在每次测试时(下面会有例子和解释)有进度条或者文本报告显示点 ("."),那么 ITestListener 是你最好的选择。但这两种方式,都只能支持testng命令行运行时添加-listener命令
下面以org.testng.ITestListener举例:
public
class
DotTestListener
extends
TestListenerAdapter {
private
int
m_count =
0
;
@Override
public
void
onTestFailure(ITestResult tr) {
log(
"F"
);
}
@Override
public
void
onTestSkipped(ITestResult tr) {
log(
"S"
);
}
@Override
public
void
onTestSuccess(ITestResult tr) {
log(
"."
);
}
private
void
log(String string) {
System.out.print(string);
if
(m_count++ %
40
==
0
) {
System.out.println(
""
);
}
}
}
|
使用的时候java org.testng.TestNG -listener com.test.DotTestListener testng.xml
这样就能在每个测试函数运行完后对测试结果进行更改。
分类:
Selenium相关,
框架相关