首页 > 解决方案 > 如何在 testng.xml 文件中查找正在执行的测试数量

问题描述

我需要找到要执行的测试数量,这些测试在testng.xml. XML 结构如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite">
    <test name="User Login">
        <classes>
            <class name="UserLogin" />
        </classes>
    </test> 
    <test name="Registration">
        <classes>
            <class name="Registration" />
        </classes>
    </test> 
</suite>

testng.xml我需要在实际执行开始之前获取测试数量。任何帮助表示赞赏。

标签: javaxmlseleniumtestng

解决方案


您必须像下面那样实现 ISuiteLisnter:

public ISuiteListener implements ISuiteLisnter {

 private long testCount = 0 ; 
 private List<ITestNGMethod> testMethods = null;

 public void setTestCount(long testCount){
      this.testCount = testCount;
 }

 public long getTestCount(){
     return this.testCount;
 }

 @Override
 public void onStart( ISuite suite){
       testMethods  = suite.getAllMethods();
       this.testCount = testMethods.size();
 }

 @Override 
 public void onFinish( ISuite suite){

 }
}

这将为您计算套件中当前正在运行的所有测试方法,您可以查看 ITestNGMethod 中存在的实用程序方法以进行处理。


推荐阅读