NUnit et [SetUp] dans les classes de base

Je suis à la recherche à un certain code de test à l'aide de NUnit, qui hérite d'une classe de base contenant un [SetUp] attribut:

public class BaseClass
{
   [SetUp]
   public void SetUp()
   {
     //do something
   }

}

[TestFixture]
public class DerivedClass : BaseClass
{
  [SetUp]
  public void SetUp()
  {

   //do something else, with no call to base.SetUp()
  }
   //tests run down here.
   //[Test]
   //[Test]
   //etc
}

La classe dérivée aura certainement besoin de travail effectué dans la classe de base' méthode SetUp ().

Suis-je raté quelque chose, ou la méthode SetUp() dans la classe de base de ne pas être appelé lorsque la dérivée de la classe d'exécuter ces tests? Est-il quelque chose de spécial avec le bouton [SetUp] de l'attribut qui assure une sera appelée avant les autres?

  • Les constructeurs sont vos amis. Si vous souhaitez un additif comportement du programme d'installation - utiliser les constructeurs, comme leur syntaxe est plus intuitive pour cela. Aussi, vous devriez également considérer la raison jamesnewkirk.typepad.com/posts/2007/09/why-you-should-.html
  • Juste une autre astuce pour quelqu'un aux prises avec cette question: assurez-vous que votre SetUp méthodes sont publiques. R# ne pas vous avertir si elles sont privées, mais ils ne fonctionnent pas.
  • Up-to-date de réponse pour NUnit 2.5+ ici: stackoverflow.com/a/22099351/532647
InformationsquelleAutor larryq | 2013-07-15