Mam test jednostki C# w ramach testu programu Visual Studio 2013, który wykonuje CLI i kod natywny. Chciałbym zbadać natywną część kodu podczas wykonywania testu jednostki C#. Jednak uruchomienie Test -> Debugowanie -> Wszystkie testy uruchamia zarządzany debugger, więc punkty przerwania w natywnym kodzie nie są trafione i nie mogę śledzić kodu C# -> C++/CLI, tak jak mogę podczas uruchamiania programu w trybie mieszanym debuggera.Użycie debugowania w trybie mieszanym w teście zarządzanej jednostki w programie Visual Studio 2013
Na przykład ten kod w moim badanej jednostki:
[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));
}
patrząc w ustawieniach projektu dla projektu badawczego jednostka, wszystko pod Debug jest wyłączone, więc nie może sprawdzić Włącz debugowanie kodu natywnego, które pozwala to zachowanie dla normalnego programu.
Jak mogę włączyć debugowanie w trybie mieszanym lub debugowanie natywne tylko podczas uruchamiania testu jednostki VS C#?
używam aktualizacji vs2013 4 i pole wyboru „Włącz debugowanie kodu natywnego” jest dostępna. Którą wersję VS używasz? – codingadventures