Ich überlege mir, einige meiner MVC-Controller als asynchrone Controller neu zu schreiben. Ich habe Working-Unit-Tests für diese Controller, aber ich versuche zu verstehen, wie man sie in einer asynchronen Controller-Umgebung verwaltet.Baueinheitstests für MVC2 AsyncControllers
Zum Beispiel zur Zeit habe ich eine Aktion wie folgt aus:
public ContentResult Transaction()
{
do stuff...
return Content("result");
}
und meine Unit-Test sieht im Grunde wie:
var result = controller.Transaction();
Assert.AreEqual("result", result.Content);
Ok, das ist einfach genug.
Aber wenn Ihre Controller Änderungen wie folgt aussehen:
public void TransactionAsync()
{
do stuff...
AsyncManager.Parameters["result"] = "result";
}
public ContentResult TransactionCompleted(string result)
{
return Content(result);
}
Wie schätzen Sie Ihre Unit-Tests annehmen, gebaut werden sollte? Sie können natürlich die asynchrone Initiatormethode in Ihrer Testmethode aufrufen, aber wie erhalten Sie den Rückgabewert?
Ich habe nichts darüber auf Google gesehen ...
Vielen Dank für alle Ideen.
Ich kann es kaum erwarten, das im Code auszuprobieren, aber es sieht fabelhaft aus. Will es als beantwortet markieren, nachdem ich es ausgeführt habe. Vielen Dank! – ChrisW