如何测试apiController(how to test apiController)

2019-09-29 04:32发布

进出口工作在VS 2013的现有Windows服务项目。

我添加了一个网络API控制器类我现在不记得如果A(V2.1)或(V1)控制器类....反正我已经把它称为SynchroniseFromAwsService

我试着从AWS拉姆达电话呼叫,但它告诉我,我没有接。 所以,我需要在本地进行测试,看看它是否工作,试图诊断问题。

我想在本地测试这个,但我不确定该怎么做so..please看到代码...

 namespace Workflow
{
    public class SynchroniseFromAwsService: ApiController
    {
        //// POST api/<controller>
        public string SapCall([FromBody]string xmlFile)
        {
            string responseMsg = "Failed Import User";

            if (!IsNewestVersionOfXMLFile(xmlFile))
            {
                responseMsg = "Not latest version of file, update not performed";
            }
            else
            {
                Business.PersonnelReplicate personnelReplicate = BusinessLogic.SynchronisePersonnel.BuildFromDataContractXml<Business.PersonnelReplicate>(xmlFile);
                bool result = Service.Personnel.SynchroniseCache(personnelReplicate);

                if (result)
                {
                    responseMsg = "Success Import Sap Cache User";
                }
            }

            return "{\"response\" : \" " + responseMsg + " \" , \"isNewActiveDirectoryUser\" : \" false \"}";
        }
}
}

我读过关于谷歌下载一个叫邮差程序并对其进行测试。

是否有什么我可以在VS打电话,只是传递一个包含XML文件来测试虚拟数据串?

什么是最好的方式

谢谢你的任何回复

Answer 1:

您可以使用

RestSharp为.NET简单的REST和HTTP API客户端

参观http://restsharp.org/了解更多详情。

使用NuGet包管理器安装在您的项目这种依赖关系

Install-Package RestSharp -Version 106.2.0


Answer 2:

您的代码是正确的。 你需要测试它在当地是它。 您可以使用邮差休息客户端本身只是完成它。 这是非常简单的。
在代码中的HTTP方法属性缺少你的函数SapCall。 因此,指定属性的用于识别哪种类型的要求这是你的方法。

[HttpPost]
public string SapCall([FromBody]string xmlFile){

现在使用邮递员其余客户端,并调用API乌尔URL。 它会得到成功执行。



文章来源: how to test apiController