加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

unit-testing – mstest.exe如何处理测试DLL的配置文件?

发布时间:2020-12-14 05:39:53 所属栏目:Windows 来源:网络整理
导读:我对mstest.exe处理测试DLL的app.config文件的方式有点困惑. 实验项目1: 一个简单的非测试DLL. (它只会从自己的app.config文件中读取并打印应用程序设置值.) 一个主EXE文件,它调用DLL来打印其配置值. 实验项目2: 单元测试DLL,它只包含一个测试方法,用于从
我对mstest.exe处理测试DLL的app.config文件的方式有点困惑.

实验项目1:

>一个简单的非测试DLL. (它只会从自己的app.config文件中读取并打印应用程序设置值.)
>一个主EXE文件,它调用DLL来打印其配置值.

实验项目2:

>单元测试DLL,它只包含一个测试方法,用于从自己的app.config文件中读取应用程序设置值并将其写入文件.
>我使用mstest.exe来调用单元测试DLL.

结果:

对于1.不打印DLL的配置值.

对于2. DLL自己的配置值被成功读取并写入文件.

那么,mstest.exe有什么特别之处吗?

谢谢.

我使用SOS.dll通过我的单元测试DLL进行调试.我发现,对于每个Unit Test DLL,都会创建一个单独的App Domain.这些应用程序域与名称为vstesthost.exe的应用程序域不同.我相信配置特定于App Domain. Mstest.exe将为每个测试DLL创建一个App Domain,并分别将其自己的配置文件加载到App Domain中.

希望有人能给出更自信的解释.

如何将配置文件加载到AppDomain中?
– 要将配置文件加载到AppDomain,请使用以下命令:

AppDomainSetup ad2setup = new
AppDomainSetup();

ad2setup.ConfigurationFile = @”config
file path”;

解决方法

是的,mstest.exe有一些特别之处.它会将所有引用dll复制到另一个目录并从那里执行(我不知道为什么会这样做,因为像NCover这样的工具只是从bin文件夹运行测试).因此,除了DLL之外,您还必须配置您希望复制的任何其他内容.执行此操作的标准方法是在.testrunco??nfig文件中指定部署项.您可以通过转到测试/编辑测试运行配置/部署来完成此操作.您可以使用“添加文件…”按钮添加配置文件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读