首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MSTest和app.config问题

MSTest和app.config问题
EN

Stack Overflow用户
提问于 2011-01-27 00:29:01
回答 2查看 21.9K关注 0票数 34

我被困在用MSTest和app.config的部署自动化单元测试的过程中。我读过多篇文章和博客,尝试过多种方式,但app.config在MSTest执行过程中似乎还没有被选中。有一个dll,其中包含用msbuild构建的所有单元测试,下面是我尝试过的.

尝试1

automagically)

  • Added

  • 将app.config复制到与MyTests.dll.config相同的位置(在msdn论坛上,据说每个测试

  • Ran MSTest.exe /noisolation /testcontainer:d:\MyTestTests.dll /test:MyTest

都会获取app.config [DeploymentItem("MyTests.dll.config")]属性)

企图2

MSTest.exe /runconfig:d:\local.testrunconfig /testcontainer:d:\MyTestTests.dll /test:MyTest

  1. 创建了具有以下内容的local.testrunconfig文件:
  2. 运行了最多的/runconfig,没有隔离,但没有执行任何操作:

结果:加载d:\local.testrunconfig.

d:\local.testrunconfig

d:\local.testrunconfig

..。没有任何事情发生:没有错误,没有测试被执行!

默认情况下,EDIT/RESOLUTION:在单独的进程中执行测试。在这种情况下,如果配置文件被命名为"dllname.dll.config“,就会自动获取它。但是,如果测试运行在VS之外,则很难调试在单独进程中运行的测试。/noisolation开关用于使MSTest在一个进程中运行所有测试。但是,在这种情况下,测试配置文件是而不是拾取的。相反,使用MSTest.exe.config文件,该文件与MSTest位于同一个目录中。要解决此问题,可以按以下方式务实地加载配置文件:

代码语言:javascript
复制
ExeConfigurationFileMap map = new ExeConfigurationFileMap();
map.ExeConfigFilename = @"path to config file";
Configuration config = 
   ConfigurationManager.OpenMappedExeConfiguration(map, ConfigurationUserLevel.None);
EN

回答 2

Stack Overflow用户

发布于 2011-01-27 00:54:40

您的应用程序不使用app.config。它使用application.exe.config。这就是你需要部署的。

抱歉,没看到你在测试DLL。

这不是.NET配置的工作方式。每个DLL不使用自己的配置文件。它只能使用它正在运行的.exe的配置文件(实际上,它正在运行的AppDomain )。

假设.dll.config实际上是主机进程,您将需要让MSTEST将您的MSTEST添加到它自己的配置中。我不知道如何在命令行中这样做。

我通常在Visual中使用一个单元测试项目,所以我只需要从该项目中部署配置文件。效果很好。

票数 5
EN

Stack Overflow用户

发布于 2011-01-28 01:26:10

事实证明,问题在于我们过于复杂的构建环境,以及我们所使用的MSTest (本地生产的)和x-copiable版本。当我遇到VS2008“适当”MSTest时,以下命令成功:

"%ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE\MSTest.exe" /testcontainer:d:\MyTests.dll /test:MyTests /resultsfile:results.trx

谢谢大家的回答!马吕斯,你让我用你的配置学到了新的东西。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4811778

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档