首页 > 解决方案 > 如何在 TestNG.xml 中按顺序运行多个类?

问题描述

我在同一个包中有 2 个类,我需要按顺序运行,即只有在执行我的第一个类之后,我的第二个类才开始执行。现在,当我运行我的 xml 时,同时打开了 2 个浏览器。我尝试给parallel = false,但没有工作。下面是我的代码:

    <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="BasicSuite" parallel="false">
  <test name="TPR Test">
    <classes>
      <class name="pulse.tpr.ClockinToClockout"/>
      <class name="pulse.tpr.RightNowToClockout"/>
    </classes>
  </test> 
</suite> 

标签: seleniumselenium-webdrivertestng-eclipsetestng.xml

解决方案


我建议您使用以下内容:

parallel="instances" thread-count="1"

另外,如果您想在类中以特定顺序运行,则可以使用以下内容。

@Test
public void Test1() {

}

@Test (dependsOnMethods={"Test1"})
public void Test2() {

}

@Test (dependsOnMethods={"Test2"})
public void Test3() {

}

但是,这将在您的班级内起作用。您不能从另一个类分配方法。


推荐阅读