2009-09-03 1 views
0

У меня есть .DLL, который содержит обматывающие оболочки .NET Runtime для объектов COM/DCOM.Оболочка кода в VS2008 на .net время исполнения вызываемых оберток

Я написал набор тестов на C# в VS 2008, который вызывает наши серверные функции, которые находятся в вышеупомянутом .DLL.

Когда включено покрытие кода и запущен набор тестов, результаты теста покрытия кода не дали никаких статистических данных и отображали нули для блоков без покрытия и покрытия.

Кто-нибудь знает, почему это так?

Кто-нибудь знает, как получить покрытие кода на .dll, которые являются общими оболочками .net?

ответ

0

Я не знаю точно, как работает механизм покрытия кода, который вы используете, но обычно используют профилирующий API + некоторое отражение, чтобы выяснить, что управляется. код выполнен.

Я подозреваю, что RCW - это, прежде всего, собственный код, соединяющий управляемые объекты с их родными COM-коллегами.

Это можно проверить, запустив .NET Reflector на сгенерированных сборках соединений (которые размещают RCW для ваших COM-объектов) и посмотрите, сколько кода управления они фактически содержат.

После того, как вы пройдете границу интерполя, все потеряно, тогда вы больше не находитесь в управляемой территории. Для сбора статистики с этой стороны вам понадобится собственный инструмент покрытия.

 Смежные вопросы

  • Нет связанных вопросов^_^