2011-06-15 4 views
0

J'essaie actuellement de créer une tâche Nant pour notre configuration TeamCity afin que nos tests UnitTest soient exécutés par Gallio et couverts par PartCover. La tâche ressemble à ceci:PartCover génère un fichier de sortie vide

<!-- UnitTest Configuration --> 
    <!-- ====================== --> 
    <!-- This configuration runs the tests through Gallio with MbUnit together with 
     PartCover to get the results of the test together with the coverage results 
    --> 
    <target name="unitTest">  
     <echo message="Unittesting ${AssemblyToTest}"/> 
     <exec program="${Paths.Tools}\PartCover\Partcover.exe" failonerror="true"> 
      <arg line="--target &quot;${Paths.Tools}\Gallio\Gallio.Echo.exe&quot;" /> 
      <arg line="--target-work-dir ${AssemblyToTestLocation}"/> 
      <arg line="--target-args /r:Local &quot;${AssemblyToTest}&quot;" /> 
      <arg line="--include &quot;[${Tests.TestedAssemblyName}]*&quot;" /> 
      <arg line="--output ${Paths.Output}\Coverage.xml" /> 
     </exec> 
    </target> 

Les tests sont en cours d'exécution, nous pouvons le voir dans TeamCity, et un fichier Coverage.xml est généré, mais vide. Il n'y a qu'une seule ligne dedans.

sortie des variables: -

  • $ {} Paths.Tools: C: \ Robinson \ Trunk \
  • $ {} Tests.TestedAssemblyName: Nom de la DLL
  • $ {AssemblyToTestLocation }: Chemin d'accès à la DLL

Ai-je raté quelque chose?

EDIT L'application TeamCity est en cours d'exécution sur un ordinateur Windows Server 2003 R2 Server et tous les build-agents qui effectuent le travail en cours d'exécution sur les systèmes Windows XP, toutes les installations 32bits.

+0

Votre serveur Teamcity fonctionne-t-il sur Windows 32 bits ou 64 bits? – GiddyUpHorsey

+0

Notre TeamCity fonctionne sur un serveur Windows Server 2003 R2, donc je suppose que c'est 32 bits, comme c'est mentionné nulle part. Les tests sont en cours sur les build-agents qui sont actuellement tous les systèmes Windows XP 32 bits –

+0

Quelle version de .NET utilisez-vous? – GiddyUpHorsey

Répondre

1

je crois que nous avons couvert cette question dans https://github.com/sawilde/partcover.net4/issues/46

et la solution était le long des lignes de

--include [$ {} Tests.TestedAssemblyName *] *?

+0

nous l'avons fait :) Et nous avons même conduit la discussion et la solution plus loin à http://www.russellallen.info/post/Automating-Test-Coverage-with-PartCover-NUnit-and-Nant.aspx –