Pregunta

Mido la cobertura de mi código usando la biblioteca gcov y me gustaría generar un informe de cobertura en formato fácil de usar. He encontrado la utilidad lcov para eso, pero no es compatible con el entorno de Windows (principalmente por la forma en que se analizan las rutas). ¿Alguien sabe sobre el puerto lcov con soporte activo para Windows?

Parece que hacer que funcione en Windows sería bastante fácil (cree que incluso podría resolverse con pocos scripts creativos por lotes / perl que imiten el comportamiento de los comandos de shell de Unix), y la herramienta es bastante útil, así que supongo alguien ya podría haberlo hecho.

¿Fue útil?

Solución

Si bien puede estar sucio, lcov parece funcionar bajo cygwin. También puede estar interesado en la pregunta ¿Cómo puede Mido la cobertura de la prueba CppUnit (en win32 y Unix)? y sus respuestas. Visual Studio parece proporcionar informes de cobertura de código.

Otros consejos

Aquí hay un puerto lcov genhtml compatible para Windows: https://github.com/RickSBrown/jgenhtml .

Está específicamente diseñado para ejecutar plataformas cruzadas, sin problemas con barras invertidas en las rutas, etc.

También hay una versión de Windows de LCOV https://github.com/valbok/lcov con explicación de cómo usarlo. Tuvimos algunos problemas para usar versiones nativas u otras de LCOV. Por ejemplo, desde aquí http: // simplemente -embedded.blogspot.com/2014/07/code-coverage-html-reports-using-lcov.html

Nuestro flujo es algo así como:

  1. Cree un proyecto en Windows utilizando el compilador ARM QNX GCC, recopile archivos gcno.

  2. Copie binarios y configuraciones a un objetivo en QNX y ejecútelos, recopile archivos gcda.

  3. Ejecute LCOV (en Windows o Linux) para crear informes.

En caso de usar la versión nativa de LCOV, los informes se romperán debido a la confusión de las rutas de Windows y Linux y algunos errores dentro de los scripts de LCOV. Tuvimos que arreglar un poco las secuencias de comandos para evitar problemas como duplicados de directorios, barras, rutas rotas, etc.

Hay una versión de Windows realizada por Donald MacQueen en http://www.macqueen.us/lcov. html pero no lo he probado. He creado mi propia versión que puede encontrar aquí:
http://simply-embedded.blogspot.com/2014/07/code-coverage-html-reports-using-lcov.html
Esto se hace en la versión 1.11 de LCOV.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top