Les Noms De Classe. Pour le montage de test, les noms, je trouve que le "Test" est assez commun dans l'omniprésence de la langue de nombreux domaines. Par exemple, dans un domaine du génie: StressTest
, et dans les produits de beauté de domaine: SkinTest
. Désolé d'être en désaccord avec le Kent, mais à l'aide de "Test" dans mes appareils de test (StressTestTest
?) c'est déroutant.
"Unité" est également utilisé dans de nombreux domaines. E. g. MeasurementUnit
. Est une classe appelée MeasurementUnitTest
un test de la "Mesure" ou "MeasurementUnit"?
Par conséquent, je tiens à utiliser le "Qa" préfixe pour toutes mes classes de test. E. g. QaSkinTest
et QaMeasurementUnit
. Il n'est jamais confondu avec des objets du domaine, et à l'aide d'un préfixe plutôt que d'un suffixe qui signifie que tous les appareils de test vivre ensemble visuellement (utile si vous avez de faux ou d'autres classes de soutien dans votre projet de test)
Les espaces de noms. Je travaille en C# et je continue mon test de classes dans le même espace de nom que la classe, elles sont à l'essai. Il est plus pratique que d'avoir un test d'espaces de noms. Bien sûr, les classes de test sont dans un autre projet.
La méthode d'essai noms. J'aime le nom de mes méthodes WhenXXX_ExpectYYY. Il rend la condition clair, et contribue à la documentation automatique (à la TestDox). Ceci est similaire à l'avis sur le Google blog de tests, mais avec plus de séparation de conditions préalables et les attentes. Par exemple:
WhenDivisorIsNonZero_ExpectDivisionResult
WhenDivisorIsZero_ExpectError
WhenInventoryIsBelowOrderQty_ExpectBackOrder
WhenInventoryIsAboveOrderQty_ExpectReducedInventory