none
Echec de l'exécution des tests RRS feed

  • Question

  • Bonjour,

    Quand j'exécute mes tests sur Visual Studio 2010 (en passant par le menu Test -> Exécuter -> Tous les tests de la solution)

    J'ai une erreur récurente :

    "Échec * L'adaptateur de test unitaire a levé une exception : ... "

    Quand je débogue ces tests, ils sont verts (voir quand j'exécute unitairement un test il passe).

    Savez-vous d'où peut venir un tel problème et surtout comment y remédier ?

    Merci

     

    mercredi 28 septembre 2011 10:28

Réponses

  • Bonjour Gilles,

    D'abord merci d'avoir investigué avec moi, j'ai fais une manip qui résoud le problème et je trouve ça surprenant... J'ai récupéré entiérement la solution et ça remarche à nouveau.

    Je n'ai aucune explication à ce problème, ni à la solution d'ailleurs.

    Encore merci,

    Cordialement

    • Marqué comme réponse rad_hass mercredi 5 octobre 2011 14:31
    mercredi 5 octobre 2011 14:30

Toutes les réponses

  • Bonjour,

    Le plus souvent cela provient d'une défaillance importante dans votre test unitaire. (OutOfMemoryException ou StackOverflowException).

    Savez-vous si le test est réellement exécuté ? (Utilisez la méthode Debug.WriteLine()).

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte .NET/Consultant/Formateur chez Winwise
    Blog : http://gilles.tourreau.fr
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5
    mercredi 28 septembre 2011 10:43
    Modérateur
  • En fait sur 340 tests, j'ai ce message sur 200 d'entres eux... Et ce message est tt récent
    mercredi 28 septembre 2011 12:55
  • Bonjour,

    Avez-vous essayé de voir si l'un de vos tests échoué a commencé à s'exécuté ?

    Pour cela au début d'une méthode de test faites :

    Console.WriteLine("Hello")

    Lancez la batterie de test, regardez le résultat du test échoué qui contient ce code, et dites nous si le message est affiché.

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte .NET/Consultant/Formateur chez Winwise
    Blog : http://gilles.tourreau.fr
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5
    mercredi 28 septembre 2011 19:16
    Modérateur
  • Bonjour, rad_hass,

    Est-ce que vous avez réussi faire les tests ? Merci de tenir la communauté informée sur la suite de vos démarches.

     

    Cordialement,

    Cipri


    Suivez MSDN sur Twitter   Suivez MSDN sur Facebook


    Ciprian DUDUIALA, MSFT  
    •Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.

    vendredi 30 septembre 2011 06:51
  • Bonjour,

    Merci pour votre réponse,

    Le message ne s'affiche pas quand j'exécute tous les tests de la solution, mais par contre comme je vous l'avez dit quand j'exécute un seul test en échec, il est vert et par conséquent le message s'affiche.

    D'avance merci,

    Cordialement

    lundi 3 octobre 2011 13:31
  • Bonjour,

    Avez-vous le même problème si vous exécutez 2 tests unitaires ? 10 ? 15 ? 100 ?

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte .NET/Consultant/Formateur chez Winwise
    Blog : http://gilles.tourreau.fr
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5
    lundi 3 octobre 2011 13:47
    Modérateur
  • Alors dés que je passe par la liste que j'ai eu en exécutant tous les tests de la solution  (en passant par le menu Test -> Exécuter -> Tous les tests de la solution), même pour exécuter un seul test ça échoue. Par contre si j'exécute un test directement (en me mettant par exemple sur un test et Ctrl R + T) il passe...

    De même si je passe par la liste de test générées par l'intégration continue, ça se passe bien... J'ai l'impression que c'est mon vsmdi qui foire.

    Merci encore


    • Modifié rad_hass lundi 3 octobre 2011 14:22
    lundi 3 octobre 2011 14:16
  • Bonjour,

    OK, je pense que le problème vient de votre configuration de vos tests, pouvez-vous nous fournir le contenu XML de la configuration de vos test (fichier .testconfig).

    Pouvez-vous nous confirmer que vous n'utilisez pas un quelconque add-in (extensions ou bibliothèque) d'un éditeur tiers pour vos tests unitaires ?

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte .NET/Consultant/Formateur chez Winwise
    Blog : http://gilles.tourreau.fr
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5
    lundi 3 octobre 2011 20:40
    Modérateur
  • Bonjour,

    Vous vouliez dire .testsettings ? Le voici :

    <?xml version="1.0" encoding="UTF-8"?>
    <TestSettings name="Local" id="54a38b2c-d8d7-4087-b4bd-0d2981407410" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010">
      <Description>Il s'agit des paramètres de test par défaut pour une série de tests locale.</Description>
      <Deployment>
        <DeploymentItem filename="MSTest.MyProject.Service\_TestFiles\Demo" outputDirectory="Demo" />
        <DeploymentItem filename="MSTest.MyProject.Service\_TestFiles\Basics" outputDirectory="Basics" />
        <DeploymentItem filename="MSTest.MyProject.Service\_TestFiles\Simple" outputDirectory="Simple" />
      </Deployment>
      <Execution>
        <TestTypeSpecific>
          <UnitTestRunConfig testTypeId="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b">
            <AssemblyResolution>
              <TestDirectory useLoadContext="true" />
            </AssemblyResolution>
          </UnitTestRunConfig>
          <WebTestRunConfiguration testTypeId="4e7599fa-5ecb-43e9-a887-cd63cf72d207">
            <Browser name="Internet Explorer 7.0">
              <Headers>
                <Header name="User-Agent" value="Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" />
                <Header name="Accept" value="*/*" />
                <Header name="Accept-Language" value="{{$IEAcceptLanguage}}" />
                <Header name="Accept-Encoding" value="GZIP" />
              </Headers>
            </Browser>
          </WebTestRunConfiguration>
        </TestTypeSpecific>
        <AgentRule name="LocalMachineDefaultRole">
          <DataCollectors>
            <DataCollector uri="datacollector://microsoft/CodeCoverage/1.0" assemblyQualifiedName="Microsoft.VisualStudio.TestTools.CodeCoverage.CoveragePlugIn, Microsoft.VisualStudio.QualityTools.Plugins.CodeCoverage, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" friendlyName="Code Coverage">
              <Configuration>
                <CodeCoverage xmlns="">
                  <Regular>
                    <CodeCoverageItem binaryFile="MyProject.Common\bin\Release\MyProject.Common.dll" pdbFile="MyProject.Common\bin\Release\MyProject.Common.pdb" instrumentInPlace="true" />
                    <CodeCoverageItem binaryFile="MyProject.Core\bin\Release\MyProject.Core.dll" pdbFile="MyProject.Core\bin\Release\MyProject.Core.pdb" instrumentInPlace="true" />
                    <CodeCoverageItem binaryFile="MyProject.Domain\bin\Release\MyProject.Domain.dll" pdbFile="MyProject.Domain\bin\Release\MyProject.Domain.pdb" instrumentInPlace="true" />
                    <CodeCoverageItem binaryFile="MyProject.Domain.Repository\bin\Release\MyProject.Domain.Repository.dll" pdbFile="MyProject.Domain.Repository\bin\Release\MyProject.Domain.Repository.pdb" instrumentInPlace="true" />
                    <CodeCoverageItem binaryFile="MyProject.Infrastructure\bin\Release\MyProject.Infrastructure.dll" pdbFile="MyProject.Infrastructure\bin\Release\MyProject.Infrastructure.pdb" instrumentInPlace="true" />
                    <CodeCoverageItem binaryFile="MyProject.Service\bin\Release\MyProject.Service.dll" pdbFile="MyProject.Service\bin\Release\MyProject.Service.pdb" instrumentInPlace="true" />
                  </Regular>
                </CodeCoverage>
              </Configuration>
            </DataCollector>
          </DataCollectors>
        </AgentRule>
      </Execution>
    </TestSettings>
    

    Je n'utilise aucun add-in particulier pour les tests (à part moq).

    Merci de votre aide,

    Cordialement

    mardi 4 octobre 2011 08:20
  • Bonjour,

    arf... Cela ne vient pas du fichier .testsettings (au passage je me suis trompé, c'est bien le .testsettings)...

    Pouvez-vous nous donner plus d'information sur l'exception qui est déclenché ?

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte .NET/Consultant/Formateur chez Winwise
    Blog : http://gilles.tourreau.fr
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5
    mardi 4 octobre 2011 17:18
    Modérateur
  • Bonjour Gilles,

    D'abord merci d'avoir investigué avec moi, j'ai fais une manip qui résoud le problème et je trouve ça surprenant... J'ai récupéré entiérement la solution et ça remarche à nouveau.

    Je n'ai aucune explication à ce problème, ni à la solution d'ailleurs.

    Encore merci,

    Cordialement

    • Marqué comme réponse rad_hass mercredi 5 octobre 2011 14:31
    mercredi 5 octobre 2011 14:30