You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调整配置让TestNG+Selenium项目bat执行时@Test按顺序运行

解决方案

你遇到的并行执行问题根源在testng.xml的suite级并行配置,按以下步骤调整即可:

  • 修改testng.xml核心配置
    你当前配置里parallel="methods"代表所有测试方法并行执行,thread-count="2"指定了2个并发线程,这就是两个@Test方法同时运行的原因。你可以直接删除这两个属性,或者将parallel属性改为none,修改后的testng.xml参考如下:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
    <suite name="Testing 07ZR">
        <test name="Automation">
             <classes>
                 <class name="AjouterPanier.AjoutPanier"/>
              </classes>
         </test> <!-- Test -->
    </suite> <!-- Suite -->
    
  • 可选:保留部分并行能力的配置方案
    如果后续你需要不同测试模块并行,仅同一个类下的方法串行,可以将parallel属性设置为parallel="tests",这样只有标签级别的用例才会并行,同一个下的所有测试方法会按顺序执行。
  • 可选:指定测试方法执行顺序
    如果需要固定两个@Test方法的执行先后,可以给@Test注解添加priority参数,数值越小执行优先级越高,示例如下:
    // 第一个执行的测试方法
    @Test(priority = 1)
    public void testLogin() {
      // 登录逻辑
    }
    
    // 第二个执行的测试方法
    @Test(priority = 2)
    public void testAddCart() {
      // 加购逻辑
    }
    
  • 可选:类级别强制单线程执行
    如果你不想修改全局suite配置,仅需要当前测试类的方法单线程运行,可以在测试类上添加@Test(singleThreaded = true)注解,该类下的所有测试方法就会强制串行执行,不受suite级并行配置影响。

注意:你提供的.bat执行脚本不需要做任何修改,调整完testng.xml或者测试代码后直接运行即可。

内容的提问来源于stack exchange,提问作者Tester testing

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 11:24:03