17370845950

TestNG的testng.xml配置文件怎么写
testng.xml 是 TestNG 的 XML 配置文件,用于灵活定义测试套件、用例、类、分组、参数和监听器等,支持环境适配与策略调度。

TestNG 的 `testng.xml` 是一个 XML 配置文件,用来定义测试套件(Suite)、测试用例(Test)、测试类(Classes)以及分组(Groups)、参数(Parameters)、监听器(Listeners)等。它比在代码里硬编码更灵活,适合不同环境、不同执行策略的测试调度。 下面是一个典型、实用、可直接修改使用的 `testng.xml` 示例,并附关键说明:

基础结构:suite + test + classes

最简配置只需定义一个 suite,里面包含一个 test,再指定要运行的测试类:





  
    
      
      
    
  

说明:
suite 是最高层级容器,可包含多个 test
test 表示一个逻辑测试单元(如“登录模块测试”),支持并行执行;
classes 下的每个 class 对应一个含 @Test 方法的 Java 类。

按组(Groups)运行测试

@Test(groups = "smoke") 标记方法后,在 XML 中通过 精准控制执行范围:


  
    
      
        
      
    
    
      
    
  

支持 include/exclude,例如同时跑 smoke 和 api,但排除 flaky:

传参(Parameters)给测试方法

在 XML 中定义参数,Java 方法用 @Parameters("browser") 接收:


  
  
    
      
    
  

也支持为每个 test 单独设参(优先级更高):


  
  ...

添加监听器和方法选择器

比如加自定义报告监听器或只运行满足条件的方法:


  
    
    
  

  
    
      
        
      
    
    ...
  

注意:
verbose="1" 输出更多日志(1~10,数值越大越详细);
• 监听器类必须有无参构造函数;
• 方法选择器需继承 IMethodSelector 并实现逻辑。

基本上就这些。实际项目中常组合使用:分组 + 参数 + 监听器。XML 不复杂但容易忽略 DTD 声明或类路径拼写错误,建议用 IDE 的 TestNG 插件生成初稿再手动调整。