Cette page détaille les dernières nouveautés et modifications apportées à dotCover.
Essai gratuit sur 30 jours disponible
Nous avons repensé le workflow de test continu pour améliorer sa convivialité :
Auparavant, chaque session de tests unitaires pouvait être convertie en session de tests continus, ce qui pouvait prêter à confusion lorsque plusieurs sessions étaient en cours d'exécution.
Il existe désormais une seule session de test continue distincte. Ce changement facilite la gestion et la compréhension de votre workflow de test.
dotCover dispose d'une nouvelle icône pour les tests continus dans ReSharper et Rider. L'icône affiche l'état actuel des tests, et indique notamment si des tests ont échoué. Elle propose plusieurs actions rapides : activer ou désactiver les tests continus, afficher les résultats de couverture, activer ou désactiver la mise en évidence du code, etc.
Vous pouvez désormais procéder à l'analyse de la couverture des tests unitaires et des applications basés sur le framework MAUI. Actuellement, dotCover ne prend en charge que les applications de bureau WinUI ciblant .NET 7.0+ sous Windows. Cela s'applique à la version autonome de dotCover et à dotCover dans ReSharper et Rider.
dotCover dans Rider et ReSharper fournit une meilleure mise en évidence du code, avec de nouvelles couleurs d'arrière-plan, une nouvelle icône de gouttière pour les lignes de code partiellement couvertes et plusieurs autres modifications mineures.
Les outils de ligne de commande dotCover sont désormais fournis sous la forme d'un outil .NET multiplateforme dépendant du framework.
Cet outil opère comme solution par défaut pour les scénarios de CI/CD et remplace le précédent.
Il est désormais possible de déclencher directement des tests continus à l'aide d'un raccourci clavier. Auparavant, cela se faisait de façon indirecte, lors de la création ou de l'enregistrement du projet. Cette fonctionnalité est disponible dans Visual Studio avec ReSharper et dans JetBrains Rider.
Vous pouvez désormais utiliser dotCover sur les CPU ARM64 sous Windows. Cela s'applique à toutes les versions : dotCover standalone, dotCover dans Rider, dotCover dans Visual Studio et l'outil d'exécution de console dotCover.
Vous pouvez désormais utiliser l'outil d'exécution de console dotCover sur les CPU ARM32 sous Linux. Les frameworks .NET Core 3.1 et .NET 5.0-7.0 sont pris en charge.
Nous avons ajouté l'action Show Covering Tests dans les menus contextuels de dotCover dans l'éditeur de code et dans la fenêtre Unit Test Coverage. Cette action affiche une fenêtre contextuelle centralisant l'ensemble des tests de couverture. Elle permet également de créer une nouvelle session de couverture.
Désormais, dotCover copie uniquement les assemblies et les fichiers de symboles requis pour les tests continus dans Visual Studio et JetBrains Rider. Cela améliore les performances générales de dotCover, notamment pour les gros projets, car il n'est plus nécessaire de copier l'intégralité du répertoire de travail. Si besoin, vous pouvez ajuster le filtre du fichier shadow-copy dans les paramètres de dotCover.
Auparavant, pour analyser la couverture des tests Unity, vous deviez redémarrer Unity avec la prise en charge de la couverture activée. À partir de cette version, le redémarrage de Unity n'est plus nécessaire et la couverture des tests est assurée directement.
Il est désormais possible d'afficher rapidement les résultats de la couverture pour le fichier ouvert via l'icône bouclier. En cliquant sur l'icône, vous parcourez les instructions non couvertes.
L'exécuteur de ligne de commande dotCover prend maintenant en charge les versions 3.13 à 3.15 d'Alpine. Les processeurs et frameworks suivants sont pris en charge :
Nous avons ajouté de nouveaux types de rapports qui incluent des informations sur la couverture pour chaque test : FileCoverageXml
, DetailedFileCoverageXml
, FileCoverageJson
et DetailedFileCoverageJson
.
Les nouveaux rapports comprennent trois sections :
Files
, qui contient des informations sur les fichiers de code source couverts. Les rapports détaillés fournissent également des informations sur les plages couvertes par fichier. TestLists
, qui donne des informations sur les tests agrégés par ensemble de tests. Tests
, qui contient des informations détaillées sur chaque test. Il est désormais possible d'utiliser les commentaires pour exclure certaines lignes ou certains blocs de code de l'analyse de la couverture. Il y a plusieurs moyens de le faire :
// dotcover disable
var i = 1;
var j = 10;
// dotcover enable
/* dotcover disable */ var i = 1; /* dotcover enable */
var i = 1; // dotCover disable this line
// dotcover disable next line
var j = 100;
Quelle que soit l'option que vous choisissez, il faut référencer le package JetBrains.dotCover.MSBuild NuGet
pour que cela fonctionne. Il s'agit d'une dépendance réservée au développement qui ne sera pas incluse en tant que dépendance d'exécution dans votre projet.
Nous avons amélioré le post-traitement des données de couverture. Par exemple, l'exécuteur de console (avec IncludePerTest=true
) prend beaucoup moins de temps pour générer des rapports.
L'outil d'exécution de ligne de commande dotCover fonctionne désormais sur les ordinateurs équipés du processeur Apple Silicon. Il peut fournir l'analyse de la couverture pour les applications .NET 6 (mode natif) et .NET 5 (mode Rosetta 2).
Une nouvelle métrique Code Vision a été ajoutée à dotCover dans Rider. Pour chaque membre de type inclus dans un ensemble de tests, dotCover indique le nombre de tests ayant réussi ou échoué. Vous pouvez également utiliser une notification Code Vision pour exécuter, couvrir et déboguer les tests.
L'outil global .NET de dotCover inclut désormais les commandes merge et report.
Nous avons amélioré les performances de l'outil d'exécution de ligne de commande dotCover, ce qui accélère l'analyse de la couverture.
L'outil d'exécution de la console dotCover est capable de collecter des informations sur la couverture pour des tests individuels et de les afficher dans les rapports générés. Actuellement, seuls les testeurs suivants sont pris en charge : dotnet test
, dotnet vstest
et vstest.console.exe
. Par exemple : dotCover.exe dotnet --output=AppCoverageReport.xml --reportType=XML --IncludePerTestInfo=Method -- test "C:\MyProject\MainTests.csproj"
Il est maintenant possible de configurer les filtres de couverture dans Visual Studio avec ReSharper de la même manière que dans JetBrains Rider.
Vous pouvez installer l'outil d'exécution de console dotCover comme outil dotnet
standard : dotnet tool install --global JetBrains.dotCover.GlobalTools --version 2021.1.0
Utilisez-le pour analyser la couverture dans vos projets et tests unitaires .NET Core.
Essai gratuit sur 30 jours disponible