问题标签 [testng.xml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
414 浏览

selenium - 在同一 @Test 方法多次使用不同参数运行时出现问题

我在运行 @Test 时遇到问题,以便在单个测试中多次运行。基本上我的框架是这样设计的,我在不同的类中有一些@Test 方法,我调用它们以便我想在我的 xml 文件中创建一个基本的测试用例。但是当我尝试调用相同的@Test 方法时,它没有按我想要的顺序运行并且只运行一次

例如:我有两节课

我想通过以下方式调用 xml:-

我想要输出 -

但它只运行一次具有某个其他值的 A 类(我假设它正在获取关于字母顺序的参数)。

我怎样才能让我的@test 方法按照我想要的在同一个测试用例中使用两个差异参数运行两次,它只是具有不同输入的相同方法,所以我不想包含单独的方法/类。

让我知道是否需要更多信息

0 投票
2 回答
45 浏览

testng - TestNG - 奇怪的行为

我对这种 testNG 行为有点困惑。

考虑这个简单的 testNG 套件。Test2 依赖于 Test1。下面的套件也仅在 Test1 之后才启动 Test2,这很棒!

以上套件工作正常,没有任何问题。

但是考虑一下。根据 testNG 文档,所有这些<test>都将分配给不同的线程。因为我只有一个<test>,所以只有一个线程正在执行这个套件,这很好。但它在 Test1 之前从 Test2 开始。

对我来说 - 在上述情况下,parallel="tests"parallel="none"应该有任何区别并且表现相同。

是什么让 testNG 表现得不同?我怎样才能让线程按<classes>顺序<test>执行?

0 投票
1 回答
414 浏览

maven - 如何使用带有geb的testng并行运行执行测试类

GoogleTest.groovy

GebManualTest.groovy

testng.xml

我想在同一个线程中运行同一个类中的所有方法(尽管在上面的示例中,我每个类只有 1 个方法),但是每个类都将在单独的线程中运行。

上面的配置似乎不起作用,这些方法在同一个线程中按顺序运行。上面的配置有什么问题吗。

0 投票
1 回答
60 浏览

testing - 使用 ITest 创建自定义方法名称会生成不正确的 HTML 报告,其中为所有测试附加了重复值

尝试使用 ITest 获取唯一方法名称时遇到类似的问题。我有一个工厂方法,其中定义了一个数据提供者来测试具有多个数据的同一个测试用例。当我尝试为每个测试运行生成唯一的方法名称时,使用 ITest 和 getTestName() 附加负责每个测试运行的参数。我可以观察到我的 TEST-TESTSUIT.xml 文件正确生成了唯一的方法名称,如下所示。

但是在 Index.html 文件中,我可以观察到一个重复值,该值负责最后一次测试运行,它已附加到所有测试中,如下所示。在 index.html 文件中,我可以看到 (1.1.1.20_login_parameter1) 的值在所有测试结果中都重复出现。

这可能是什么原因。这是testng方面的错误吗?我们能不能从我们这边解决这个问题。我尝试了 [1] 中建议的各种方法。但是任何事情都对我不起作用。感谢您对这种行为的看法

类似于我尝试过的示例源代码如下

}

感谢您对如何解决此问题的帮助。这是Testng方面的错误吗

0 投票
1 回答
230 浏览

testng - 在类路径中找不到类:即使在 testng.xml 中为类提到了完整的层次结构,也会引发异常

我正在尝试执行一个简单的 TestNG 测试方法,但是,我得到了异常:

我已经Project->Clean在 eclipse 中尝试过,但是它不起作用,另外,请注意我已经为 中的测试类提供了完整的层次结构testng.xml,请提出问题可能出在哪里。

我试过了Project-->CleanRun as-->mvn clean build

Eclipse 控制台中的错误跟踪:{ 这是在 Eclipse 控制台中找到的异常跟踪{org.testng.TestNGException:在类路径中找不到类:com.extentreports.test.ExtentReports.TestClass1 at org.testng.xml.XmlClass.loadClass(XmlClass .java:77) 在 org.testng.xml.XmlClass.init(XmlClass.java:69) 在 org.testng.xml.XmlClass.(XmlClass.java:55) 在 org.testng.xml.TestNGContentHandler.startElement(TestNGContentHandler .java:575) 在 com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:509)}

}

0 投票
1 回答
226 浏览

testng - TestNG 执行顺序 - 它混合了来自不同类的测试

TestNG 在执行时混合了来自不同类的测试。每个班级都有一些测试。而不是像这样执行:

  1. FirstTestClass firstTest
  2. FirstTestClass secondTest
  3. FirstTestClass 第三次测试

  4. SecondTestClass firstTest

  5. SecondTestClass secondTest
  6. SecondTestClass 第三次测试

它像这样执行,混合来自每个类的测试:

  1. FirstTestClass firstTest
  2. SecondTestClass firstTest
  3. FirstTestClass secondTest
  4. SecondTestClass secondTest
  5. FirstTestClass 第三次测试
  6. SecondTestClass 第三次测试

这是我的 XML:

我所有的测试都有优先级参数集。但它应该只影响类内的测试,而不是现在正在发生的项目的每个测试。

有什么提示吗?

0 投票
2 回答
2448 浏览

java - 如何将动态参数传递给 testNG.xml 运行多个测试

我有发送多个测试和多个参数的 xml 套件。

例子:

我需要多次运行这个类,每次都使用不同的 offerId 参数。(例如 1234,4567,7899)

我只想运行这个请求一次,它会刺激所有不同的参数并一次又一次地运行整个套装,并在同一个报告上给出结果。

这就是我所做的:

所以这将加载并运行我需要的套装,但是如何更改套装内的参数?(之后我将创建 for 循环)

[目前我复制了 xml 并手动更改了每个测试的参数。然后运行套件]

考试:

0 投票
1 回答
111 浏览

java - 如何从不同的电子邮件 html 文件构建单个 testNG 电子邮件报告

我有一个场景,我需要从不同的 testng emailable-html 报告中收集数据,并使其看起来与 testng-emailable 报告相同。

我对此一无所知,例如如何实现它。我只想创建一个单独的 java 项目,它将读取不同的 html 报告,并将其作为最终合并报告,看起来像 testng-emailable 报告。

请给我一些输入,例如是否有任何侦听器可以创建 html 模板并接受来自 html 文件的输入数据。

我没有看工作代码。只是寻找一些输入来启动这个要求。

0 投票
3 回答
115 浏览

testng - 如何在并行执行时先在一个类中运行多个方法,然后再在其他类中运行方法

我面临以下问题:我创建了两个类,其中包括具有优先级属性的@Tests:

... 和 ...

我在 testng.xml 中对两个类进行了一项测试,但是当我运行测试时,它将根据两个类的优先级对我的 @Tests 进行排序:

testA1 testB1 testA2 testB2 testA3 testB3 我期待以下结果:

testA1 testA2 testA3 testB1 testB2 testB3 我的问题是,我怎样才能防止我的@Tests 基于两个类排序并同时只从一个类运行@Tests?

0 投票
0 回答
926 浏览

java - testng.xml 不会选择/执行所有测试

我正在尝试使用 testng.xml 运行项目中的所有测试我有 80 个类,大约有 140 个测试,但每次运行测试时,testng 只运行 83/140 个测试。我试图在未执行但找不到的测试中找到模式。

所有测试/类文件都在“脚本”包下,所有类文件都有:

所有测试都有@Test注释(即有 140 个@Test标签) @Test(priority=1,testName="",description="")

我没有enabled="false"@Test注释中使用

我的 testng.xml

注意:由于某种原因,这里跳过了大约 57 个测试。例如其中之一是addMsd

  1. 对于某些类,如果类有 3 个测试,则只执行 2 个
  2. 对于某些类,会跳过整个类文件(具有单个或多个测试)

如果我添加一个附加参数并添加一个测试(通常与上面的 XML 一起跳过),那么它会成功执行:

在这里,addMsd 将被成功执行(在第一个 xml 中会被跳过)

我尝试使用 IntelliJ testng 插件(右键单击 > 运行)和 maven surefire 插件运行测试,并在两种方法中观察到相同的行为。

我无法弄清楚 XML 或项目设置可能有什么问题。任何指针都会有所帮助!