So testen Sie einen web-api-post-Methode der erhält ein Klasse
Habe ich eine erstellt ASP.NET web-API, die hat ein Domänencontroller mit dem Namen ImageSaveController
. Dies hat eine InsertImage
Methode fügt Daten in die Datenbank ein und ist ein HttpPost
Methode. Diese Methode bekommt ein Objekt vom Typ ImageData
als parameter. Der code für die Steuerung und die parameter-Klasse sind unten angegeben:
public class ImageSaveController : ApiController
{
[HttpPost]
public IHttpActionResult InsertImage(ImageData imageData)
{
System.Data.SqlClient.SqlConnection conn = null;
try
{
//Image save to database code here
}
catch (Exception ex)
{
return Content(HttpStatusCode.NotModified, ex.Message);
}
finally
{
if (conn != null)
conn.Close();
}
return Content(HttpStatusCode.OK,"");
}
}
//ImageData class
public class ImageData
{
public int Id { get; set; }
public byte[] ImageValue { get; set; }
}
Ich würde gerne testen, es von einem client aus. Wie Sie sehen können, die ImageValue
Eigenschaft des ImageData
Klasse ist ein byte
array. Nicht sicher, wie Sie Sie übergeben die C# - Klasse parameter zu dieser Methode. Idealerweise würde ich gerne übergeben Sie die parameter wie json
und ich bin nicht sicher, wie Sie Sie konstruieren die json
für diesen Zweck. Ich bin auch nicht sicher ob es getestet werden könnte mit der chrome-app mit dem Namen postman.
InformationsquelleAutor Massey | 2016-07-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Öffnen Postboten geben Sie Ihre url zu der Aktion:
Add header: Content-Typ application/json.
Im Körper Registerkarte " überprüfen "raw" (JSON) und geben Sie Ihre Daten.
Quelle Web-API-2-POST-Anforderung für die simulation im POSTMAN-Rest Client
Wenn Sie möchten, machen gute tests, die bessere Lösung ist das schreiben von unit-tests.
InformationsquelleAutor mihkov
Dies ist, was ich benutze zu tun:
Verwenden Sie einen REST-client-tester wie Postman oder Fiddler. Ich benutze Postbote, das ist eine app für Google Chrome.
Für den einfachen Bau von JSON können Sie erstellen eine HttpGet-Methode auf Sie-controller und liefert ein fake konstruiert
ImageData
und rufen Sie es von Postboten. Hier sehen Sie die JSON und verwenden, die für die Eingabe der POST-Methode.InformationsquelleAutor Michael