2017-10-06 1 views
0

Ich benutze Castle Windsor als DI und Verwendung von Repository, um auf die Datenebenen zugreifen und implementieren. Da ich alle Datenzugriffsschichten in meinem Repository implementiert habe, ist es an der Zeit, diese Methoden in meinem API-Controller aufzurufen. SO habe ich 'POST-Methode' GetAllReportsByClient Methode 'und' CreateReport '. Um zu testen, ob einige Methoden funktionieren, ohne die Ansicht und den AJAX-Aufruf tatsächlich zu implementieren, wie kann ich Beispieldaten mithilfe meiner Methode "Bericht erstellen" einfügen?Was ist der beste Weg, um die HTTPPOST-Anfrage zu testen, indem Sie das Modell übergeben?

Das Verfahren aus Repo ist unter:

public void CreateReport(TReportHeaderModel model) 

     { 

      using (var connection = new TReportEntitiesConnection()) 
      { 

       connection.THeader.Add(new THeader() 
       { 

        ClientID=model.ClientID, 
        ID=model.ID, 
        THeaderTitle=model.THeaderTitle, 
        RowNumber=model.RowNumber 

       }); 


       foreach (var d in model.TReports) 
       { 
        connection.TReport.Add(new TReport() 
        { 

         ID=d.ID, 
         TReportName=d.TReportName, 
         URL=d.URL, 
         RowNumber=d.RowNumber, 



        }); 

       } 

       connection.SaveChanges(); 


      } 



       throw new NotImplementedException(); 
     } 

Die unten ist Httppost Create in Controller-Aufruf:

[HttpPost] 
    public ActionResultModel CreateReport([FromBody] TReportHeaderModel model) 

    { 


     try 
     { 
      _tReportingService.CreateReport(model); 

      return new ActionResultModel() //return void, must not be followed by object expression 
      { 
       Success = true, 
       Message = "Report Successfully Created." 
      }; 

     } 


     catch (Exception ex) 

     { 
      return new ActionResultModel() 
      { 
       Success = false, 
       Message = "Report not created.", 
       Obj=ex.Message 

      }; 


     } 


    } 

Antwort

0

könnten Sie Postman (https://www.getpostman.com/) oder Fiddler (www.telerik.com/ fiddler), um die Anfrage zu emulieren. Noch besser: Sie könnten einen Test mit einem Test-Framework schreiben.

Verwandte Themen