获取 NUnit3 中的测试总数
Get total count of tests in NUnit3
我想获得 NUnit3 计划进行的测试总数 运行,用于计算进度、剩余时间等。
我想从测试中获取此信息,以便我可以将有关剩余测试数量的信息打印到控制台。
我查看了标准界面 NUnit.Framework.TestContext
,但我找不到任何提供测试列表的内容。
一些谷歌搜索将我指向 NUnit.Engine
API 但这似乎是供外部使用的——每个构造函数都想要测试程序集的路径,我什至不知道如何获取 信息来自 TestContext
。
谁能给我指出正确的方向?
// Using reflection to get total number of tests in a class
using System;
using System.Linq;
using System.Reflection;
using NUnit;
int GetTotalTestCount(Type testClassType)
{
int result = 0;
foreach (MethodBase method in testClassType.GetMethods())
{
if (method.GetCustomAttributes<TestAttribute>().Any())
{
result++;
}
}
return result;
}
我想获得 NUnit3 计划进行的测试总数 运行,用于计算进度、剩余时间等。
我想从测试中获取此信息,以便我可以将有关剩余测试数量的信息打印到控制台。
我查看了标准界面 NUnit.Framework.TestContext
,但我找不到任何提供测试列表的内容。
一些谷歌搜索将我指向 NUnit.Engine
API 但这似乎是供外部使用的——每个构造函数都想要测试程序集的路径,我什至不知道如何获取 信息来自 TestContext
。
谁能给我指出正确的方向?
// Using reflection to get total number of tests in a class
using System;
using System.Linq;
using System.Reflection;
using NUnit;
int GetTotalTestCount(Type testClassType)
{
int result = 0;
foreach (MethodBase method in testClassType.GetMethods())
{
if (method.GetCustomAttributes<TestAttribute>().Any())
{
result++;
}
}
return result;
}