我正在进行单元测试。我不知道如何在asp.net中对global.asax进行单元测试。 asp.net中的global.asax是否属于单元测试覆盖范围?还有应用程序安装程序类,其中包含系统变量。我应该测试一下吗?
答案 0 :(得分:6)
你可以。但你不应该。一个单元测试,顾名思义,测试单位。 global.asax或系统配置中的代码不是一个单元。对这些事情的测试将与代码紧密耦合,并且当你改变一个无关紧要的东西时总会给你错误的失败,所以它不值得。应用程序测试中还有其他级别,它们变得相关:集成测试,自动化等。您不应该将所有内容都放入“单元测试”中,只能定义明确的单个部分。例如。你也没有对你的web.config或DI容器配置进行单元测试,但是你在另一个层面测试它们。
答案 1 :(得分:6)
我对此的立场是你不应该在global.asax中对代码进行单元测试。
主要原因是声明和布线代码不应该多于此处。正如Peter Porfy所说,该代码应该在集成测试中进行测试。
如果您在global.asax中发现任何值得单元测试的逻辑,您可能应该将其分解出来并单独测试这些类。