Nunit: Problème TestCaseData.SetName

Créé le 28 juil. 2017  ·  5Commentaires  ·  Source: nunit/nunit

Lorsque j'utilise la méthode SetName pour nommer mon test et que le nom contient un point, l'explorateur de tests VS n'affiche pas correctement le test.
image

Tous les tests sur l'écran ci-dessus sont utilisés dans les mêmes méthodes, mais dans l'explorateur de tests, ils sont affichés comme des classes différentes. Tous les tests qui n'ont pas de point dans leur nom sont regroupés dans "CreateOrdersTests" - 5 éléments. Mais le "CreateSingleOrderChargeRate1.5 est placé dans la classe séparée "CreateSingleOrderChargeRate1".

Si je remplace le point par une virgule, le problème est résolu. Vérifiez l'écran.
image

Merci.

done

Commentaire le plus utile

Cela m'a en fait aidé : _n'utilisez pas de noms contenant un point_

Tous les 5 commentaires

Les noms de test NUnit ressemblent au nom complet d'une méthode - plus une liste d'arguments facultative - par défaut, mais nous autorisons l'utilisateur à modifier le nom de la partie méthode. NUnit n'a en fait aucune attente pour le format d'un nom et n'utilise même pas le nom pour trouver des tests à moins que vous ne le lui demandiez via un filtre. IOW, un nom de test NUnit est une chaîne arbitraire qui n'a même pas besoin d'être unique.

Visual Studio, OTOH, suppose que les tests sont nommés comme le nom complet d'une méthode de test et exige qu'ils soient uniques. Il s'agit d'une inadéquation qui ne peut jamais être complètement surmontée. Pour cette raison, nous ne pouvons que suggérer aux utilisateurs de ne pas utiliser de noms contenant un point, car cela confond visual studio.

Mon inclination est de fermer cela comme n'étant pas un bogue. Une alternative consiste à le marquer comme un bogue de l'adaptateur. Il est possible que l'adaptateur modifie le nom pour répondre aux exigences vs. Je ne pense certainement pas que nous devrions le modifier de manière générale, juste pour le plaisir d'un seul coureur.

@OsirisTerje Si vous souhaitez accepter cela comme un problème pour l'adaptateur, veuillez le déplacer. Sinon, fermons-le.

Bonjour Charlie,

Merci pour votre réponse détaillée.

Fermer ceci pour les raisons que @CharliePoole donne ci-dessus.

Cela m'a en fait aidé : _n'utilisez pas de noms contenant un point_

La solution pour ce cas est de remplacer le point par \u2024. Donc, juste avant de nommer le test, utilisez .Replace(".", "\u2024")

Cette page vous a été utile?
0 / 5 - 0 notes