단위 테스트에서 다음과 같은 .net 구성 파일 (예 : app.config 및 web.config)의 정보에 액세스하는 데 문제가 있습니다. 호스트 유형 "몰". 그것은 몇 가지 두통을 일으키는 것이므로 누군가에게 무엇을 할 수 있는지에 대한 아이디어가 있기를 바랍니다.테스트에 호스트 유형 "Moles"가있을 때 구성 파일의 정보에 액세스 할 수 없음
우리는 Visual Studio 2010을 사용하고 있으며 VS 2010 SP1이 설치된 컴퓨터와 SP1이 설치되지 않은 컴퓨터에서이 작업을 시도했으며 32 비트 및 64 비트 컴퓨터에서도이 작업을 시도했습니다.
나는 테스트를 가장 간단한 조건으로 줄이는 데 자유를 사용했습니다. 다음 두 파일로 구성된 단위 테스트 프로젝트를 작성하고 주석 처리 된 행의 주석을 제거한 후 테스트를 실행하여 문제를 재현 할 수 있습니다. 이 테스트는 호스트 유형없이 수행되지만, Mole을 호스트 유형으로 도입하면 테스트에서 널 어설 션이 실패합니다. 이유는 확실하지 않습니다.
첫째, 구성 파일의 App.config :
<?xml version="1.0"?>
<configuration>
<connectionStrings>
<add name="Connection" connectionString="Something" />
</connectionStrings>
</configuration>
다음, 단일 테스트를 포함하는 테스트 클래스 :
namespace TestProject
{
using System.Configuration;
using Microsoft.VisualStudio.TestTools.UnitTesting;
[TestClass]
public class UnitTest
{
[TestMethod]
//[HostType("Moles")]
public void TestMethod()
{
var data = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
Assert.IsNotNull(data.ConnectionStrings.ConnectionStrings["Connection"]);
}
}
}
사람이 어떤 통찰력을 제공 할 수 있다면 나는 감사 드리겠습니다. 이 일을 할 것입니다 경우
정말 감사합니다,
닉
UnitTest 프로젝트의 App.Config를 HostType ("Moles")을 사용하여 테스트하는 방법 (http://stackoverflow.com/questions/4105604/how-to-read-unittest-projects-app- config-from-test-with-hosttypemoles) – NotMe
또한 http://stackoverflow.com/questions/8859087/moles-v0-94-causing-tests-to-ignore-config-file에서 비슷한 질문을 봅니다. – sfuqua