CLI 및 기본 코드를 사용하는 Visual Studio 2013 테스트 프레임 워크에 C# 유닛 테스트가 있습니다. C# 단위 테스트를 실행하는 동안 코드의 기본 부분을 조사하고 싶습니다. 그러나 테스트 -> 디버그 -> 모든 테스트를 실행하면 관리되는 디버거가 실행되므로 원시 코드의 중단 점이 적중되지 않으며 혼합 모드 디버거에서 프로그램을 실행할 때처럼 C# -> C++/CLI 코드에서 추적 할 수 없습니다. 예를 들어Visual Studio 2013의 관리되는 유닛 테스트에서 혼합 모드 디버깅 사용
, 내 단위 테스트에서이 코드 :
[TestMethod]
public void TestRoundTripEvaluate()
{
var obj = new MyCLIObject();
var roundtripped = RoundtripXml(obj);
// I would like to trace into here to see why Equals returns false.
// But the definition for MyCLIObject is in a CPP file and cannot be navigated
// to running the unit test because Visual Studio starts the debugger as "managed only"
// when using Test -> Debug -> All Tests
Assert.IsTrue(obj.Equals(roundtripped));
}
단위 테스트 프로젝트에 대한 프로젝트 설정을 보면은, 디버그에서 모든 그래서 사용을 확인할 수 없습니다, 네이티브 코드 디버깅, 비활성화되어있는 일반 프로그램에 대해이 동작을 허용합니다.
VS C# 유닛 테스트를 실행할 때 혼합 모드 디버깅 또는 원시 전용 디버깅을 활성화하려면 어떻게해야합니까?
기록을 위해 , 내가 "네이티브 코드 디버깅 사용"VS2013 업데이트를 사용하고있어 사용할 수 있습니다. 어떤 버전의 VS를 사용하고 있습니까? – codingadventures