gpt4 book ai didi

c# - Web API 中的单元测试自定义路由

转载 作者:太空狗 更新时间:2023-10-29 19:41:27 25 4
gpt4 key购买 nike

我已经在这上面花了半天时间,但没有任何成功。如何在 Web API 中对路由进行单元测试?

我的意思是给定以下 URI:

~/Test/Get/2

我想对上面的 url 由测试 Controller 捕获并接受 int 参数的 Get 操作进行单元测试。

最佳答案

为了测试路由,我创建了一个库来帮助您进行断言 - MyWebApi:https://github.com/ivaylokenov/MyWebApi

基本上,您可以执行以下操作:

MyWebApi
.Routes()
.ShouldMap(“api/WebApiController/SomeAction/5”)
.WithJsonContent(@”{“”SomeInt””: 1, “”SomeString””: “”Test””}”)
.And()
.WithHttpMethod(HttpMethod.Post)
.To(c => c.SomeAction(5, new RequestModel
{
SomeInt = 1,
SomeString = “Test”
}));

如果想自己实现,可以看这里的代码,复制过来: https://github.com/ivaylokenov/MyWebApi/blob/master/src/MyWebApi/Utilities/RouteResolvers/InternalRouteResolver.cs

关于c# - Web API 中的单元测试自定义路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11386120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com