编译时我在输出中得到NUnit3TestExecutor converted 279 of 279 NUnit test cases
。为什么呢?
我想解决方案已经从2升级到3,但这是我所有的线索。
我已经检查过我们只使用Nunit版本3 279只是我们所有测试中的一小部分。
更新
深入研究NUnit3TestExecutor
我发现
private void RunAssembly(string assemblyName, TestFilter filter) {
...
var nunitTestCases = loadResult.SelectNodes("//test-case");
...
foreach (XmlNode testNode in nunitTestCases){
loadedTestCases.Add(testConverter.ConvertTestCase(testNode));
}
TestLog.Info(string.Format("NUnit3TestExecutor converted {0} of {1} NUnit test cases", loadedTestCases.Count, nunitTestCases.Count));
...
}
ConvertTestCase
看起来像这样
/// <summary>
/// Converts an NUnit test into a TestCase for Visual Studio,
/// using the best method available according to the exact
/// type passed and caching results for efficiency.
/// </summary>
public TestCase ConvertTestCase(XmlNode testNode)
这是罪魁祸首。
这似乎是正确的,因为我们在Visualstudio中运行了Nunit测试。但是......我们没有279 [TestFixture]
或[Test]
。还有更多的东西在发挥作用
所以我仍然处于不确定状态。
答案 0 :(得分:1)
“ NUnit3TestExecutor转换了x个x NUnit测试用例中的x个”日志来自this code,它称为ConvertTestCase method here。
有关该方法的文档说
将NUnit测试转换为Visual Studio的TestCase,
根据具体情况使用最佳方法
输入类型并缓存结果以提高效率。
因此,似乎与您拥有的NUnit版本无关,而只是将测试转换为Visual Studio可以理解的格式。