Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我们可以在asp.net中对global.asax进行单元测试吗?_C#_.net_Nunit_Rhino Mocks_Global Asax - Fatal编程技术网

C# 我们可以在asp.net中对global.asax进行单元测试吗?

C# 我们可以在asp.net中对global.asax进行单元测试吗?,c#,.net,nunit,rhino-mocks,global-asax,C#,.net,Nunit,Rhino Mocks,Global Asax,我正在做单元测试。我不知道如何在asp.net中单元测试global.asax。 asp.net中的global.asax是否在单元测试范围内?还有一个包含系统变量的应用程序安装程序类。我应该测试它们吗?你可以。但你不应该。顾名思义,单元测试测试单元。global.asax或系统配置中的代码不是一个单元。这些东西的测试将与代码紧密地结合在一起,当你改变一个不相关的东西时,总是会给你错误的失败,所以它不值得。在应用程序测试中还有其他相关级别:集成测试、自动化等。您不应该将所有内容都放在“单元测试”

我正在做单元测试。我不知道如何在asp.net中单元测试global.asax。
asp.net中的global.asax是否在单元测试范围内?还有一个包含系统变量的应用程序安装程序类。我应该测试它们吗?

你可以。但你不应该。顾名思义,单元测试测试单元。global.asax或系统配置中的代码不是一个单元。这些东西的测试将与代码紧密地结合在一起,当你改变一个不相关的东西时,总是会给你错误的失败,所以它不值得。在应用程序测试中还有其他相关级别:集成测试、自动化等。您不应该将所有内容都放在“单元测试”中,而应该放在定义良好的单个部分中。例如,您也不需要对web.config或DI容器配置进行单元测试,而是在另一个级别上进行测试。

我的立场是,您不应该在global.asax中对代码进行单元测试

主要原因是其中不应该有比声明和连接代码更多的内容。正如Peter Porfy已经说过的,应该在集成测试中测试代码


如果您在global.asax中发现任何值得进行单元测试的逻辑,您可能应该将其考虑在内,并单独测试这些类。

&应用程序安装程序呢?public void安装(Castle.Windsor.IWindsorContainer容器,Castle.MicroKernel.subsystem.Configuration.IConfigurationStore存储){//something}您能发布一个代码示例吗?