Fermer

octobre 23, 2020

Comment utiliser le package JustMock.Commercial sur Azure DevOps


Un guide rapide pour expliquer comment utiliser le package JustMock.Commercial sur Azure DevOps.

L'une des principales fonctionnalités de la JustMock.Commercial R3 2020 release est la possibilité de déployer la ] Profileur JustMock ainsi que les assemblages de cadres moqueurs. Cela améliore considérablement la convivialité et corrige certains des inconvénients des versions précédentes. Jusqu'ici tout va bien, mais vous serez probablement nombreux à être curieux de savoir comment cette nouvelle fonctionnalité peut être utilisée dans Azure DevOps. Avec cet article, je vais essayer de donner une courte recette en quelques étapes simples pour la faire fonctionner dans votre pipeline CI / CD.

Pour les besoins de l'exercice, nous utiliserons un projet de test unitaire MSTest minimal importé dans les sources repository:

 Exemple de projet de test JustMock

L'exemple de projet est disponible sur GitHub .

Nous avons également besoin d'un pipeline dérivé du modèle de tâche .NET Desktop. La tâche VsTest initialement générée est remplacée par la tâche JustMock Tests v2. La voici:

 Exemple de pipeline avec la tâche JustMock v2

Bien sûr, la définition de construction ci-dessus n'est qu'un exemple et vous pouvez continuer à utiliser votre approche préférée pour la construction de pipelines, même avec YAML.

Passons en revue la configuration requise étape par étape.

  1. Ajoutez (ou mettez à jour) la référence du package NuGet JustMock.Commercial R3 2020 (2020.3.916.1) dans le projet de test. Voici l'exemple:





  2. Le package JustMock.Commercial est disponible sur le flux Telerik NuGet, vous devez donc configurer les flux et l'authentification dans la tâche de restauration NuGet comme suit: [19659016] Flux et authentification "title =" Flux et authentification "style =" vertical-align: middle; "/>
    Les instructions détaillées pour créer le fichier de configuration NuGet et configurer les connexions de service sur Azure DevOps sont couvertes dans un autre article de blog, Packages NuGet Azure DevOps et Telerik .

    En utilisant YAML, la configuration de la tâche ressemble à ceci:

     - tâche: NuGetCommand @ 2
      displayName: "Restauration NuGet"
      contributions:
        restoreSolution: '$ (Parameters.solution)'
        feedsToUse: config
        nugetConfigPath: nuget.config
        externalFeedCredentials: 'Telerik NuGet Repo' 
  3. La dernière partie, mais importante de la configuration, consiste à définir les chemins du profileur pour les cibles 32 et 64 bits dans la tâche de test JustMock vers les emplacements correspondants dans le cache NuGet local. Par défaut, ces chemins sont placés dans le répertoire du profil utilisateur et contiennent la version particulière du package:
     JustMock profiler path "title =" JustMock profiler path "style =" vertical-align: middle; "/> <br data-recalc-dims= The La tâche YAML ressemble à ceci:
     - tâche: vs-publisher-443.jm-vstest-2.JustMockVSTest-2.JustMockVSTest@2
          displayName: 'VsTest - testAssemblies'
          contributions:
            pathTo64BitJustMockProfiler: '$ (UserProfile) . nuget  packages  justmock.commercial  2020.3.916.1  runtimes  win-x64  native  Telerik.CodeWeaver.Profiler.dll'
            pathTo32BitJustMockProfiler: '$ (UserProfile) . nuget  packages  justmock.commercial  2020.3.916.1  runtimes  win-x86  native  Telerik.CodeWeaver.Profiler.dll' 
  4. Nous sommes maintenant prêts à exécuter le pipeline. [19659017]  Exécution du pipeline "title =" Exécution du pipeline "style =" vertical-align: middle; "/></p data-recalc-dims=

Tout est fait, bonne moquerie!





Source link