java - 带有 DataProvider 的 TestNG 成功运行,但 Eclipse 视图未正确更新
问题描述
问题:
当我使用DataProvider
提供大量测试用例运行 TestNG 测试时,TestNG 的 Eclipse 视图未适当更新。它会在随机点停止更新,并且进度条指示测试仍在运行。但是,控制台显示所有测试都已终止。
对于下面的 MCVE,我使用了 Eclipse 2019-03 和 TestNG 6.14.3,但是几年来我一直面临这个问题,使用不同的 Eclipse 版本、不同的 TestNG 版本以及在不同的机器上。
MCVE:
import static org.testng.Assert.assertEquals;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
public class TestNgTest {
@DataProvider(name="data")
public final Object[][] getTestData() {
Object[][] data = new Integer[1000][];
for (int i=0; i<1000; i++) {
data[i] = new Integer[]{i, i};
}
return data;
}
@Test(dataProvider="data")
public void test(int actual, int expected) {
assertEquals(actual, expected);
}
}
MCVE 的控制台输出:
[RemoteTestNG] detected TestNG version 6.14.3
PASSED: test(0, 0)
PASSED: test(1, 1)
PASSED: test(2, 2)
[...........]
PASSED: test(997, 997)
PASSED: test(998, 998)
PASSED: test(999, 999)
===============================================
Default test
Tests run: 1000, Failures: 0, Skips: 0
===============================================
===============================================
Default suite
Total tests run: 1000, Failures: 0, Skips: 0
===============================================
TestNG-View 中的输出:
有人面临同样的问题吗?任何想法如何解决这个问题?
解决方案
我已经尝试使用您共享的示例来复制它,但我无法做到这一点。
对于它的价值,我的项目是一个使用 TestNG7.1.0
作为依赖项的 Maven 项目。
操作系统:OSX (10.15.2) Eclipse:版本:2019-03 (4.11.0) 构建 ID:20190314-1200 TestNG eclipse 插件:
Name : TestNG
Identifier: org.testng.eclipse.feature.group
version: 7.0.0.201908240652
Name : TestNG M2E (Maven) Integration
Identifier: org.testng.eclipse.maven.feature.feature.group
version: 7.0.0.201908240652
Name: TestNG P2 Feature
Identifier: org.testng.p2.feature.feature.group
version: 7.1.0.r202001120626
我没有看到 eclipse 插件停顿。请看下面的截图。您可以考虑升级到我提到的版本(包括 TestNG)
如果这仍然是一个问题,我建议您在 TestNG eclipse 插件项目中提交一个错误:https ://github.com/cbeust/testng-eclipse