无法在单元测试期间读取app.config设置 - 再次

时间:2014-10-02 18:39:54

标签: c# visual-studio-2010 unit-testing

我一直在尝试使用Visual Studio 2010按照此Using a Configuration File to Define a Data Source中的说明在单元测试期间读取app.config文件。我在论坛中也阅读了很多帖子,但我是尝试读取app.config值时仍然获得空值。以下是我的app.config和单元测试代码的片段。

的App.config

<configuration>
  <configSections>
    <section name="microsoft.visualstudio.testtools" type="Microsoft.VisualStudio.TestTools.UnitTesting.TestConfigurationSection, Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
  </configSections>
  <connectionStrings>
    <add name="DatabaseConnectionString" connectionString="Data Source=***;User Id=***;Password=***;Integrated Security=no" providerName="Oracle"/>
  </connectionStrings>

  <microsoft.visualstudio.testtools>
    <dataSources>
      <add name="MyOracleConnection" connectionString="DatabaseConnectionString" dataTableName="***" dataAccessMethod="Sequential"/>

    </dataSources>
  </microsoft.visualstudio.testtools>
</configuration>

单元测试:

    [TestMethod()]
    [DeploymentItem("app.config")]
    public void S_ConstructorTest(){
    myObject m = new myObject();
       ...}

在我的目标代码中,我试图通过以下方式读取配置文件:

public static readonly string sConnectionString = System.Web.Configuration.WebConfigurationManager.AppSettings["sConnectionString"];

基于我在这里的其他帖子中读到的内容,MSDN似乎添加了超过此工作所必需的内容,但是在读取配置文件时我仍然保持获取空值。我知道关于单元测试是否应该访问真正的数据库存在争议,但是现在我只需要让它来读取配置文件。

任何帮助都将不胜感激。

0 个答案:

没有答案