15

Я использую gtest для тестирования моего кода на C++ с Visual Studio 2010. Но я не мог понять, что я достиг 100% покрытия кода. Чтобы убедиться, что я покрыл 100% -ный охват кода, я хотел бы знать, что есть ли способ узнать покрытие кода gtest или нет? Потому что у меня много Googled, но я не нашел возможного способа получить результат покрытия кода, используя gtest в среде Windows. Если возможно, сообщите мне.Как получить покрытие кода с помощью gtest в Windows?

Спасибо много ..

+3

Почему '-ve' голосовать ?? Я действительно не нашел для этого никакого решения, поэтому я поставил вопрос на этом портале. Попытайтесь понять –

+0

Вам нужно будет использовать инструменты покрытия вашего компилятора. Это не имеет никакого отношения к структуре тестирования (gtest, cppunit и т. Д.). –

+0

@ Rasmi Ranjan Nayak: Я когда-то использовал NCover для покрытия кода .Net. Также используется gtest для C++. Но не уверен, что какой-либо инструмент о покрытии кода C++. –

ответ

5

покрытие кода в C++ не может быть обработано в рамках тестирования исключительно, потому что инструмент анализа покрытия должен знать всю степень коды (Wich рамка тестирования не имеет) и он должен каким-либо образом контролировать тестируемый код, чтобы контролировать, какие части кода выполняются.

У меня было такое же желание, как и вы, желая измерить свое тестовое покрытие в MSVC. Это то, что я узнал:
MSVC поставляется с некоторыми инструментами командной строки для этих инструментов, при поиске по-разному вы получите одну или две сообщения в блоге msdn о том, как их использовать. Честно говоря, это не очень удобно и легко использовать. Если вы ищете сторонние инструменты, вы, вероятно, не найдете никаких бесплатных. Любые инструменты, которые я нашел, были корпоративными инструментами с лицензионными сборами в диапазоне от нескольких сотен до более тысячи долларов, поэтому на самом деле не вариант, если вы не являетесь компанией.

33

Вы можете попробовать OpenCppCoverage: http://opencppcoverage.codeplex.com.

Это с открытым исходным кодом, разработанный для Visual Studio C++ и хорошо работающий с Google Test. Я уже успешно использовал проект среднего размера (~ 500 000 строк кода).

Надеюсь, что помогите.

Отказ от ответственности: Я являюсь автором инструмента.

+0

Будет ли это работать для Visual Studio 2010 Ultimate/Professional Edition? У нас есть «Windows-7» и «Windows-Vista OS». Позвольте мне знать системную зависимость –