2016-06-29 20 views
0

Ich schreibe einen MUnit-Test, um zu testen, ob ein Sub-Flow aufgerufen wird, aber sobald der Sub-Flow aufgerufen wurde, versucht der Test, durch den Rest des Flusses zu routen. Ohne verschiedene Prozessoren zu verspotten, bedeutet dies, dass der Test fehlschlägt.Können Sie einen MUnit-Testteil durch einen Fluss stoppen?

Ist es möglich, einen Test zu stoppen, wenn er einen bestimmten Prozessor erreicht? I.e. Wenn der Nachrichtenprozessor mit X Stop Test übereinstimmt?

Antwort

2

Was tbriscope sagte, macht sehr viel Sinn. Wenn nach dem Schlüssel MP (Message Processor) verursacht ein Problem für Ihren Test kann es ein Indikator für Sie diesen Fluss zu brechen, so dass es mehr testbar, wartbar und lesbar.

Das heißt, Sie können eine Spy verwenden. Es wird Ihnen erlauben, zu sehen, was mit diesem MP passiert und, wenn Sie dies tun, werfen Sie throw eine Ausnahme (Assertion failure oder nur ein einfacher Fehler), der den Fluss stoppt. Bitte beachten Sie, dass es keine Möglichkeit gibt, den Fluss zu stoppen, es sei denn, Sie werfen eine Ausnahme (das heißt, Sie können auch die throw-an MUnit MP verwenden).

HTH

0

Was ist mit dem Extrahieren des Rests des Flusses in seinen eigenen Unterfluss und verspotten es stattdessen?