Покрытие кода в приложении Win32 - PullRequest
1 голос
/ 01 июня 2010

Мы только начинаем новый проект. Доказательство концепции (PoC) для этого проекта было сделано просто с использованием Win32. План заключался в том, чтобы разработать план действий, привести в порядок уродливые детали и выполнить требования, установленные владельцами проекта.

Одним из требований для настоящего проекта является 100% покрытие кода, но я вижу проблемы впереди: как я могу добиться 100% покрытия кода с Win32 - насос сообщений будет исключительно трудно эффективно протестировать ?! Я мог бы скомпилировать в DLL, но не будет ли в основном приложении кода, который не будет покрыт?

Я подумываю о том, чтобы отбросить код Win32 и перейти на MFC - по крайней мере, тогда многое из этого будет скрыто от глаз (и, следовательно, от покрытия).

Есть мысли по поводу проблемы?

1 Ответ

1 голос
/ 01 июня 2010

Я имею в виду WndProc, но то же самое относится и к WinMain. Как вы можете протестировать это?

Я делаю тестирование, но не юнит-тестирование: я тестирую систему / интеграцию.

Если вы используете свое (целое) приложение, пока оно работает под отладчиком / профилировщиком / анализатором покрытия кода, то, конечно, вы обнаружите (и анализатор покрытия покажет), что WinMain и т. Д. Запущены (покрываются) .

Тогда возникает вопрос: как автоматизировать системное / интеграционное тестирование всего приложения? У вас может быть тестовая среда с автоматами, управляющими графическим интерфейсом; Я ничего о себе не знаю, но, например, здесь есть список . В качестве альтернативы, это может быть приемлемо (для клиента), если набор приемочных испытаний представляет собой последовательность неавтоматических / ручных испытаний.

См. Также Следует ли тестировать внутреннюю реализацию или проверять только публичное поведение?

...