You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用NUnit3控制台运行器单独执行单个测试用例?

如何用NUnit3控制台运行器单独执行指定的TestCase测试用例

刚好我之前处理过类似的需求,给你几个靠谱的方法来单独运行NUnit3里的特定TestCase:


方法一:直接指定完整的测试限定名(最可靠)

NUnit3的每个TestCase都会生成一个唯一的测试名称,由**命名空间.类名.方法名(参数列表)**组成,你需要把这个完整名称传给--test参数。

比如你的测试方法如果在MyMathTests命名空间的CalculatorTests类里,对应的命令就是:

nunit3-console.exe --test="MyMathTests.CalculatorTests.DivideTest(12,3,4)" path/to/your/test.dll

⚠️ 注意:一定要替换成你自己的命名空间和类名,不然NUnit找不到对应的测试。如果测试名称里包含空格或者特殊字符,记得用双引号把整个测试名称括起来(Windows命令行和PowerShell都适用)。


方法二:用--where参数灵活过滤(更易读)

如果觉得写完整限定名太麻烦,也可以用--where参数通过条件过滤来定位测试用例,比如:

按参数列表匹配

nunit3-console.exe --where "methodname == 'DivideTest' && args == '(12,3,4)'" path/to/your/test.dll

按具体参数值匹配(更精准,适合参数有歧义的场景)

nunit3-console.exe --where "methodname == 'DivideTest' && arg0 == 12 && arg1 == 3 && arg2 == 4" path/to/your/test.dll

这里的arg0、arg1对应TestCase里的第1、第2个参数,以此类推。


小技巧:快速获取测试的完整名称

如果你不确定测试的完整限定名,可以先运行一次所有测试,控制台输出里会列出每个TestCase的完整名称,直接复制过来用就行。比如运行:

nunit3-console.exe path/to/your/test.dll

输出里会类似这样显示每个测试的名称:

MyMathTests.CalculatorTests.DivideTest(12,3,4)
MyMathTests.CalculatorTests.DivideTest(12,2,6)
MyMathTests.CalculatorTests.DivideTest(12,4,3)

直接复制你需要的那一行到--test参数里就搞定了!

内容的提问来源于stack exchange,提问作者user3035729

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:00:50