当前位置: 首页 > 知识库问答 >
问题:

TestNG不在测试套件中运行测试

那鹏
2023-03-14

我试图使用XML和TestNG运行一个测试套件,但是我总是同时使用Eclipse和命令行得到相同的消息:

[TestNG] Running:
  /Users/achavez/Programs/Selenium/java/src/tests/resources/testng.xml


===============================================
TestingSuite1
Total tests run: 0, Failures: 0, Skips: 0
===============================================

文件已正确读取,但测试似乎没有运行。

以下是我的testng.xml的内容:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="TestingSuite1" verbose="1">
    <test name="Test1"  >
        <packages>
            <package name="tests"/>
        </packages>
    </test>
</suite>

这是我的目录结构在Eclipse中的样子:

此外,这也是我试图通过命令行运行测试套件的方式:

java -jar /Applications/Zend\ Studio.app/Contents/Resources/Java/plugins/org.testng.eclipse_6.8.6.20141201_2240/lib/testng.jar src/tests/resources/testng.xml

我尝试过通过eclipse清理项目,但似乎没有帮助。我也试过跑步:

< code>mvn clean,但它也没有完成工作。

任何帮助我找到正确的方向的人都将不胜感激!

共有3个答案

殷浩慨
2023-03-14

显然,TestNG 在为测试套件生成 XML 文件方面是错误的。

即使按照他们的指示,我的测试也没有运行。我最终得到了这个testng.xml文件和我的测试,开始运行:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="TestingSuite" parallel="none">
  <test name="Test1">
    <classes>
      <class name="tests.Page1"/>
    </classes>
  </test>
    <test name="Test 2">
        <classes>
            <class name="tests.Page2"/>
        </classes>
    </test>
</suite>
贺飞星
2023-03-14

我不得不将我的方法访问修饰符从私有更改为公共以使其正常工作。

柏高丽
2023-03-14

您还可以检查导入的导入测试注释,应该是:

import org.testng.annotations.Test;
@Test
public myTest(){ ... }

而不是例如:

import org.junit.Test;
 类似资料:
  • 请让我知道是否可以通过TestNG运行并行套件?

  • 主要内容:1. 测试类,2. testng.xml,其他例子测试套件是用于测试软件程序的行为或一组行为的测试用例的集合。 在TestNG中,我们无法在测试源代码中定义一个套件,但它可以由一个XML文件表示,因为套件是执行的功能。 它还允许灵活配置要运行的测试。 套件可以包含一个或多个测试,并由标记定义。 是的根标记。 它描述了一个测试套件,它又由几个部分组成。 下表列出了接受的所有定义的合法属性。 属性 描述 name 套件的名称,这是一个强制属性。 ve

  • 我有以下testng.xml文件。我希望testng按顺序运行这些测试。我不想将这些测试中的每一个分开到一个新文件中。 我在套件级别上尝试了parallel=“tests”、“classes”、“methods”和thread count=1的组合,但都没有成功。

  • 我有一个 TestNG 测试套件运行良好,除了一件事:我不能两次运行相同的测试。我想运行两次测试的原因是,我正在测试将用户登录/注销的 Web 服务,并且我想验证登录是否有效,然后注销是否有效,然后再次登录它们,以便后续测试(需要用户登录)可以继续。 下面是我的testng.xml的相关部分: 如您所见,“appUserLogintest”被调用了两次。但是,当我调试它时,我可以清楚地看到它只在第

  • 我正在尝试运行配置套件文件的并行测试。测试是针对使用Selenium的web应用程序。套件文件由多个测试组成。每个测试都包含多个测试类。每个测试中的第一个类用于初始化(@beforetest)WebDriver并关闭它(@aftertest)。WebDriver是静态的,以便将其传递给其他类(原因是我们需要从最后一个测试类结束的地方继续测试)。 当套件配置为按顺序运行测试时,测试将成功运行。但是当