Pregunta

Resuelto: Mire en la parte inferior de esta cuestión para el trabajo de configuración


Estoy intentando configurar NCover para el uso en mi proyecto FinalBuilder, para un proyecto # .NET 4.0 C, pero mi archivo de salida final de la cobertura no contiene datos de cobertura.

Estoy utilizando:

Todas las herramientas son la última oficial a partir de hoy.

Por fin he logrado FB coaxial a correr mis pruebas de unidad bajo NCover para el proyecto .NET 4.0, por lo que obtener Tests run: 184, ..., lo cual es correcto.

Sin embargo, la salida de archivos Coverage.xml final a partir de NCover está casi vacío, y se ve así:

<?xml version="1.0" encoding="utf-8"?>
<!-- saved from NCover 3.0 Export url='http://www.ncover.com/' -->
<coverage profilerVersion="3.3.2.6211" driverVersion="3.3.2" exportversion="3" viewdisplayname="" startTime="2010-04-22T08:55:33.7471316Z" measureTime="2010-04-22T08:55:35.3462915Z" projectName="" buildid="27c78ffa-c636-4002-a901-3211a0850b99" coveragenodeid="0" failed="false" satisfactorybranchthreshold="95" satisfactorycoveragethreshold="95" satisfactorycyclomaticcomplexitythreshold="20" satisfactoryfunctionthreshold="80" satisfactoryunvisitedsequencepoints="10" uiviewtype="TreeView" viewguid="C:\Dev\VS.NET\LVK.IoC\LVK.IoC.Tests\bin\Debug\Coverage.xml" viewfilterstyle="None" viewreportstyle="SequencePointCoveragePercentage" viewsortstyle="Name">
  <rebasedpaths />
  <filters />
  <documents>
    <doc id="0" excluded="false" url="None" cs="" csa="00000000-0000-0000-0000-000000000000" om="0" nid="0" />
  </documents>
</coverage>

La salida en el registro de FB es:

...
***************** End Program Output *****************

Execution Time: 1,5992 s

Coverage Xml: C:\Dev\VS.NET\LVK.IoC\LVK.IoC.Tests\bin\Debug\Coverage.xml
NCover Success

Mi configuración de la etapa de FB para NCover:

  • NCover lo :? Cobertura de las pruebas NUnit
  • comando : C:\Program Files (x86)\NUnit 2.5.4\bin\net-2.0\nunit-console.exe
  • argumentos de comando : LVK.IoC.Tests.dll /noshadow /framework:4.0.30319 /process=single /nothread
    • Nota: he intentado con y sin las opciones /process y /nothread
  • Directorio de trabajo : %FBPROJECTDIR%\LVK.IoC.Tests\bin\Debug
  • Lista de montajes al perfil : %FBPROJECTDIR%\LVK.IoC.Tests\bin\Debug\LVK.IoC.dll
    • Nota:. He intentado simplemente lista el nombre de la Asamblea, con y sin la extensión

La documentación para el paso FB no ayuda, ya que sólo las listas de frases de menor importancia para cada propiedad, y no puede dar ejemplos o de soluciones de problemas.

Ya que quiero tirar de los resultados de cobertura en NDepend para ejecutar el análisis en tiempo de compilación, quiero ese archivo para contener la necesidad de información.

También estoy usando TestDriven , y si yo haga clic en el archivo de soluciones y seleccione "Prueba con NCover", NCover-explorer se abre con los datos de cobertura, y si lo pido que me muestre la carpeta con los archivos de cobertura, en la que hay un archivo .xml con la misma estructura que el anterior, sólo que con todos los datos que deben estar allí, por lo que las herramientas que tengo es ciertamente capaz de producirlo.

¿Alguien una idea de lo que yo he configurado mal aquí?


Resuelto : La siguiente configuración finalmente funcionó para mí. Produce una cobertura de código estadísticas básicas en la página de resultados de inicio para una generación, con un enlace a un informe detallado con todo.

Desde que el nombre de mi unidad de proyectos de prueba el mismo que el proyecto pone a prueba, sólo que con un sufijo .Tests, he excluido los de la cobertura de código. También, tuve que específicamente incluir sólo mis propias asambleas (que todo el comienzo con LVK.) De lo contrario me gustaría tener algunos ensamblados cargados por el corredor TeamCity, que impactó levemente mis estadísticas de cobertura.

En primer lugar, he instalado la última de las herramientas (a partir de esta edición):

  • NCover 3.4.8
  • TeamCity 5.1.2
  • NUnit 2.5.5

La configuración de la acumulación de pantalla en TeamCity es entonces como sigue:

  • Objetivos: Reconstruir
  • Configuración: depuración
  • Plataforma: Cualquier CPU
  • .NET Cobertura Herramienta: NCover (3.x)
  • .NET Runtime: .NET Framework 4.0, Versión: Nativo
  • Ruta NCover 3:% system.ncover.v3.x64.path% (esto es Windows 2008 Server R2 64-bit)
  • adicionales Argumentos NCover:

    //ias LVK.*
    //eas .*Tests
    //eas LVK\.CodeQuality
    //ea LVK\.CodeQuality\.IgnoreCodeCoverageAttribute
    
  • adicionales Argumentos NCover de Información:

    //or FullCoverageReport:Html:{teamcity.report.path}
    
  • NUnit Runner: NUnit 2.5.5

  • .NET Runtime Plataforma: auto (MSIL), Versión: 4.0
  • pruebas ejecutadas mediante: ** \ bin \ Debug * Tests.dll
¿Fue útil?

Solución

Por lo que sé, NCover no es capaz de cubrir pruebas para .NET 4.0. Se anunció una nueva versión para .NET 4.0, pero no es allí todavía.

Encuentre información sobre el tema aquí . Personalmente no tengo ninguna experiencia con esta tarea ...

Actualizar : Lanzaron NCover 3.4 con .NET 4.0 apoyo. Tal vez Usted da una oportunidad.

Otros consejos

He encontrado su respuesta de esta conversación: NUnit no se está ejecutando el código de Visual Studio 2010

Para el archivo nunit-consola-x86.exe.config, bajo <configuration> complemento:

<startup>
  <requiredRuntime version="v4.0.30319" />
</startup>

Bajo <runtime> complemento

<loadFromRemoteSources enabled="true" />

arreglaron para mí. Estoy usando TeamCity no FinalBuilder sin embargo.

También estoy usando NCover 3.4.

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