Pourquoi faut-il que ClassInitialize de la méthode statique?
Je suis curieux de savoir pourquoi le montage de l'installation doit être statique? Il semble plus intuitif pour moi d'avoir des variables d'instance par appareil qui partagent la durée de vie de l'appareil.
Oui, ceux-ci peuvent être initialisées dans le constructeur, mais alors je suppose qu'ils sont hors de la portée du contrôle du lanceur de test.
Ce que les exigences de conception ou de philosophies déterminé que la méthode de configuration doit être statique?
Vous devez vous connecter pour publier un commentaire.
La méthode avec le ClassInitialize attribut s'exécute une fois pour tous les tests dans la classe. Une instance de la classe est créée chaque fois qu'un test est exécuté, il doit être fixe dans le but d'exécuter uniquement une fois.
Si vous souhaitez initialiser pour chaque test, vous pouvez utiliser le
TestInitialize
attribut, qui sera exécuté à chaque fois qu'une nouvelle instance de la classe est créée (avant l'exécution d'un test).Si vous avez besoin de plus d'infos, vous pouvez consulter:
Ce Fichus MSTest L'Exécution De La Commande
an instance of the class is created each time a test is run
, si vous n'aimez pas ce essayez quelque chose comme NUnit qui ne crée qu'une seule instance de chaque classe/fixture. Qui sonne bien, si vous voulez partager l'état et savez ce que vous faites au sujet des effets secondaires