Question

Je créé une classe héritant System.Web.UI.Page.

Dans cette classe, je l'emporte sur certains événements du cycle de vie des applications comme page_load et Page_Init. Avant d'appeler la base de ces événements que je vérifier les valeurs de la session, les cookies et les choses comme ça.

Je voudrais tester l'unité des méthodes qui vérifient les sessions et les cookies. Je suis déjà en mesure de se moquer des objets de session et cookies. Est-il possible de tester l'unité des événements du cycle de vie d'application? Ou est ma seule option totalement re-facteur de la classe afin que toutes les méthodes appelées depuis les événements du cycle de vie sont dans une catégorie distincte?

Était-ce utile?

La solution

Si vous êtes en mesure de se moquer des objets pertinents, vous pouvez simplement appeler les méthodes du cycle de vie directement. Mais je ne sais pas si c'est une bonne idée; À mon humble avis, tout gestionnaire d'événements du cycle de vie unique devrait faire des tâches multiples, dont chacun devrait probablement être déléguée à une autre classe -. Et il est que le code vous devriez être les tests unitaires

Mon habitude personnelle est que l'utilité de test I / services / code référentiel directement, et le code de congé dans les événements du cycle de vie directement seulement applicable au titre des tests d'intégration, plutôt que des tests unitaires.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top