Posterior a de esta extensa selección de información resolvimos este dilema que pueden tener algunos lectores. Te brindamos la respuesta y deseamos resultarte de gran apoyo.
Solución:
no necesita agregarlos a un proyecto en particular
También uso el generador de informes y la cubierta abierta para generar resultados de cobertura de prueba. Este es el script que uso para generar la cobertura de código usando opencover
“C:Archivos de programa (x86)OpenCoverOpenCover.Console.exe” -registrar:usuario -target:”C:Archivos de programa (x86)Microsoft Visual Studio 10.0Common7IDEmstest.exe” -targetargs :”/noisolation /testcontainer:”C:\binDebug.dll” /resultsfile:C:ReportsMSTest.trx” -filter:”+[]” -mergebyhash -salida:C:InformesMSTestprojectCoverageReport.xml
Tenga en cuenta que si su argumento necesita escapar de las comillas, es decir, pasar argumentos con espacios a ese proceso de destino, entonces puede usar "
p.ej: -targetargs:"c:program files"
Este es el script que uso para ejecutar el generador de informes.
C:ReportGeneratorbinReportGenerator.exe -reports:”C:ReportsMSTestprojectCoverageReport.xml” -targetdir:”C:ReportsCodeCoverage”
Espero que esto ayude.
Después de varios años de usar estas herramientas de código abierto, finalmente creé una publicación completa sobre cómo usar OpenCover y ReportCover para generar métricas de cobertura de pruebas unitarias.
La publicación describe cómo crear el .bat
archivo y los comandos necesarios para hacer lo siguiente:
- Genere un informe de salida de métricas de prueba unitaria usando OpenCover
- Generando un
.htm
informe usando ReportGenerator - Analizar los datos de salida para interpretar las métricas de cobertura de pruebas unitarias
Uso de OpenCover y ReportGenerator para obtener métricas de cobertura de código de pruebas unitarias en .NET
Gracias @atconway por tu tutorial. Actualicé un poco su secuencia de comandos .bat para facilitar futuras actualizaciones y cambios en el proyecto.
Resumiendo, para usar OpenCover con NUnit, debe agregar a su proyecto estos nugets:
- AbrirCubierta
- NUnit.ConsoleRunner
- Generador de informes por Daniel Palme
y aquí está el archivo .bat actualizado. Para ejecutarlo, simplemente edite la “configuración” y guarde el script como archivo .bat en la raíz de su proyecto.
@echo off
REM ** Be sure to install these nugets:
REM ** NUnit.ConsoleRunner
REM ** OpenCover
REM ** ReportGenerator
REM **
REM ** All paths should be entered without quotes
REM ** SET TestResultsFileProjectName=CalculatorResults
SET TestResultsFileProjectName=
REM ** SET DLLToTestRelativePath=CalculatorbinDebugMyCalc.dll
SET DLLToTestRelativePath=
REM ** Filters Wiki https://github.com/opencover/opencover/wiki/Usage
REM ** SET Filters=+[Calculator]* -[Calculator]CalculatorTests.*
SET Filters=
SET OpenCoverFolderName=OpenCover.4.6.519
SET NUnitConsoleRunnerFolderName=NUnit.ConsoleRunner.3.6.1
SET ReportGeneratorFolderName=ReportGenerator.2.5.6
REM *****************************************************************
REM Create a 'GeneratedReports' folder if it does not exist
if not exist "%~dp0GeneratedReports" mkdir "%~dp0GeneratedReports"
REM Remove any previous test execution files to prevent issues overwriting
IF EXIST "%~dp0%TestResultsFileProjectName%.trx" del "%~dp0%TestResultsFileProjectName%.trx%"
REM Remove any previously created test output directories
CD %~dp0
FOR /D /R %%X IN (%USERNAME%*) DO RD /S /Q "%%X"
REM Run the tests against the targeted output
call :RunOpenCoverUnitTestMetrics
REM Generate the report output based on the test results
if %errorlevel% equ 0 (
call :RunReportGeneratorOutput
)
REM Launch the report
if %errorlevel% equ 0 (
call :RunLaunchReport
)
exit /b %errorlevel%
:RunOpenCoverUnitTestMetrics
"%~dp0packages%OpenCoverFolderName%toolsOpenCover.Console.exe" ^
-register:user ^
-target:"%~dp0packages%NUnitConsoleRunnerFolderName%toolsnunit3-console.exe" ^
-targetargs:"--noheader "%~dp0%DLLToTestRelativePath%"" ^
-filter:"%Filters%" ^
-mergebyhash ^
-skipautoprops ^
-excludebyattribute:"System.CodeDom.Compiler.GeneratedCodeAttribute" ^
-output:"%~dp0GeneratedReports%TestResultsFileProjectName%.xml"
exit /b %errorlevel%
:RunReportGeneratorOutput
"%~dp0packages%ReportGeneratorFolderName%toolsReportGenerator.exe" ^
-reports:"%~dp0GeneratedReports%TestResultsFileProjectName%.xml" ^
-targetdir:"%~dp0GeneratedReportsReportGenerator Output"
exit /b %errorlevel%
:RunLaunchReport
start "report" "%~dp0GeneratedReportsReportGenerator Outputindex.htm"
exit /b %errorlevel%
Comentarios y valoraciones del post
No se te olvide compartir este ensayo si te ayudó.