java - 方法取决于不存在的组 - Testng

标签 java xml testing testng legacy

我正在尝试创建两个测试,其中一个依赖于另一个的执行。我正在处理的项目充满了遗留代码,因此我试图使应用程序的主要部分可测试。第一个测试基本上会尝试创建一些到数据库的连接并设置一些静态变量。然后 Test2 将使用连接和变量插入一些数据。我宁愿不再做 Test1 在 Test2 中做的事情。

我已经让 Test2 依赖于 test1,这样如果 Test1 失败,Test2 就不会执行。但如果 Test2 失败,我希望它能够重新运行。当我在 Intellij IDEA 中尝试这个时,我得到以下信息:

java.lang.Throwable: Method a.stack.Test2.failingTest() depends on nonexistent group "FirstTest"

我错过了什么?

测试 1:

package a.stack;

import org.testng.Assert;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.Test;

/**
* The First test
*/
@Test(groups = {"FirstTest"})
public class Test1 {

    public void init(){
        // Initialize something which other tests should use
        Assert.assertTrue(true);
    }
}

和测试 2:

package a.stack;

import org.testng.Assert;
import org.testng.annotations.Test;

/**
*
*/
@Test(groups = {"OtherTests"}, dependsOnGroups = {"FirstTest"})
public class Test2 {
    public void failingTest(){
        Assert.assertTrue(false);
    }
}

测试.xml:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="test" verbose="1">
    <test name="basic" junit="false">
        <groups>
            <run>
                <include name="FirstTest"/>
                <include name="OtherTests"/>
            </run>
        </groups>
        <packages>
            <package name="a.*"/>
        </packages>
    </test>
</suite>

最佳答案

testng.xml 中你的组代码不正确,因为它应该包含包名

    <groups>
        <run>
            <include name="packagename.FirstTest"/>
            <include name="packagename.OtherTests"/>
        </run>
    </groups>

然后在组标签后包含带有包名称的类[这是可选的,因为您已经在使用包名称]

  <class name="packagename.classname1"/>
  <class name="packagename.classname2"/>

代码现在应该可以工作了

关于java - 方法取决于不存在的组 - Testng,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9312513/

相关文章:

Java JScrollPane - 多个组件

android - getContext 和 getResource 在 5.0 及更低版本之间的兼容性

xml - 使用动态 URL 添加带有 XSL :FO 的图片

ios - Quick and Nimble 测试

testing - 可以创建 gradle 任务来对项目中的测试进行子集化吗?

java - 监控 Hibernate 缓存使用情况的工具

java - Log4j - 记录器不工作

java - 使用 Java 填充 HTML 文件中的占位符

xml - XPath 选择祖先列表中没有特定元素的所有元素

java - Java7 nio2 有任何可用的内存文件系统实现吗?