ich ein sonderbares Fällen, wo die Reihenfolge der Ausführung verkorkste istSpecflow: Basisklasse für Schritte
ich eine Basisklasse für alle meine Schritte Definition erstellt haben
public abstract class BaseSteps
{
static BaseSteps()
{
Console.WriteLine("static Constructor");
}
protected BaseSteps()
{
Console.WriteLine("public Constructor");
}
[BeforeTestRun]
public static void BeforeTestRun()
{
Console.WriteLine("static void BeforeTestRun");
}
[AfterTestRun]
public static void AfterTestRun()
{
Console.WriteLine("static void AfterTestRun");
}
[Before]
public static void Before()
{
Console.WriteLine("Base Before Scenario");
}
}
[Binding]
public class SpecFlowFeature1Steps: BaseSteps
{
public SpecFlowFeature1Steps()
{
}
[BeforeScenario()]
public void Setup()
{
}
Aber es ist seltsam, dass die Reihenfolge der Ausführung auf meine Debug-Modus sieht wie folgt aus
- Basisklasse statische Konstruktor
- [BeforeTestRun]
- Basisklassenkonstruktor
- Child Klassenkonstruktors
- Child-Klasse [BeforeScenario]
- Basisklasse [BeforeScenario] ....
ich es erwartet hatte wie zu sein ...
- Basisklasse [BeforeScenario]
- Basiskonstruktor
- Kinder Klassenkonstruktors
- Child-Klasse [BeforeScenario]
...
Jede Idee, warum diese sich so verhalten?
TIA