繁体   English   中英

在C#中的单元测试中设置命令行参数

[英]Set command line arguments in unit tests in C#

是否有可能在VS2012的单元测试中设置命令行参数? 如果没有,除了编写批处理文件之外,还有其他方法可以测试这些参数的许多组合吗?

编辑:我有一个控制台程序,它读取和解析传递的命令行参数。 我想确保程序具有正确的行为,无论传递什么命令行参数。 我不是一遍又一遍地尝试所有组合,而是想编写一个单元测试来设置参数并用它们启动我的程序。

我没有使用任何特定的测试框架。 只是通过创建一个新的测试项目在Visual Studio中提供的那个。

为什么不将解析逻辑提取到与main()分开的单独的类和单元测试?

解析类应该接收字符串参数。 因此,您可以在不同的测试中测试尽可能多的场景,而无需实际运行程序可执行文件,而只需调用该类。

更新

现在,如果你不想创建一个额外的类(我可能仍然会这样做,只是为了清晰,但无论如何),考虑到你可以从你的单元调用你的静态Main(string[] args)方法测试,传递不同的参数以涵盖不同的场景。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM