使用TestNG中的Listener完成监听测试,通过实现ITestListener里面的方法完成测试过程监听
public class TestListenner implements ITestListener {
@Override
public void onTestStart(ITestResult result) {
}
@Override
public void onTestSuccess(ITestResult result) {
}
@Override
public void onTestFailure(ITestResult result) {
}
@Override
public void onTestSkipped(ITestResult result) {
}
@Override
public void onTestFailedButWithinSuccessPercentage(ITestResult result) {
}
@Override
public void onStart(ITestContext context) {
}
@Override
public void onFinish(ITestContext context) {
}
}
实现类:
package Listener;
import org.apache.log4j.Logger;
import org.testng.ITestContext;
import org.testng.ITestListener;
import org.testng.ITestResult;
public class TestListenner implements ITestListener {
Logger logger = Logger.getLogger(TestListenner.class);
@Override
public void onTestStart(ITestResult result) {
logger.info("用例启动。" + result.toString());
}
@Override
public void onTestSuccess(ITestResult result) {
logger.info("用例执行成功," + result.toString());
}
@Override
public void onTestFailure(ITestResult result) {
logger.info("用例运行失败,启动截图。");
}
@Override
public void onTestSkipped(ITestResult result) {
}
@Override
public void onTestFailedButWithinSuccessPercentage(ITestResult result) {
}
@Override
public void onStart(ITestContext context) {
}
@Override
public void onFinish(ITestContext context) {
}
}
执行testng.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="All Test Suite">
<test verbose="2" preserve-order="true" name="D:/IdeaProject/interfaceRestAssured">
<classes>
<class name="TestNg.TestAssert">
</class>
</classes>
</test>
<!-- <listeners>
<listener class-name="report.ExtentReport"></listener>
</listeners>-->
<!-- 这是reportNG的监听类-->
<!-- <listeners>
<listener class-name="org.uncommons.reportng.HTMLReporter"></listener>
<listener class-name="org.uncommons.reportng.JUnitXMLReporter"></listener>
</listeners>-->
<listeners>
<listener class-name="Listener.TestListenner"></listener>
</listeners>
</suite>
运行截图:
用例运行 运行成功与失败都会打印运行信息