相关疑难解决方法(0)

无法使用ConfigurationManager在C#.NET Core单元测试项目中读取app.config

我创建了一个简单的单元测试项目来读取app.config文件.目标框架是Core 2.0.我还创建了一个Core 2.0控制台应用程序,以便对自己进行完整性检查,以确保我没有做任何奇怪的事情(在.NET 4.6.1单元测试项目中,同样的测试通过了预期).

控制台应用程序读取app.config很好,但单元测试方法失败,我无法弄清楚原因.两者都使用相同app.config的副本(未添加为链接),并且都安装了System.Configuration.ConfigurationManager v4.4.1 NuGet包.

App.config

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="Test1" value ="This is test 1."/>
    <add key="Test2" value ="42"/>
    <add key="Test3" value ="-42"/>
    <add key="Test4" value="true"/>
    <add key="Test5" value="false"/>
    <add key="Test6" value ="101.101"/>
    <add key="Test7" value ="-1.2345"/>
  </appSettings>
</configuration>
Run Code Online (Sandbox Code Playgroud)

单元测试

using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.Configuration;

namespace ConfigTest
{
    [TestClass]
    public class UnitTest1
    {
        [TestMethod()]
        public void ConfigTest()
        {
            foreach (string s in ConfigurationManager.AppSettings.AllKeys)
            {
                System.Console.WriteLine(s);
                System.Diagnostics.Debug.WriteLine(s);
            }

            //AllKeys.Length is 0? Should be 7...
            Assert.IsTrue(ConfigurationManager.AppSettings.AllKeys.Length == …
Run Code Online (Sandbox Code Playgroud)

c# unit-testing app-config .net-core

19
推荐指数
7
解决办法
6611
查看次数

标签 统计

.net-core ×1

app-config ×1

c# ×1

unit-testing ×1