【发布时间】:2018-02-15 08:33:27
【问题描述】:
我刚刚使用 .net core 2.0 创建了一个空的 web api 项目。 我有一个默认控制器,现在我想创建一个集成测试。
[Route("api/[controller]")]
public class ValuesController : Controller
{
// GET api/values
[HttpGet]
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
}
目标是在集成中自己托管然后输入url api/values 并检查返回。
注意:我只使用 wep api 2 和 owin,这很容易做到。但是下面的链接:https://docs.microsoft.com/en-us/aspnet/core/fundamentals/owin 说.net core 应用程序不应该使用owin,那么我们应该使用什么以及如何使用呢?
【问题讨论】:
-
为什么不从控制器调用方法?
-
因为如果我实例化控制器并直接调用 Get(),它不会测试路由以及在 Http GET 上调用的事实。那将更像是一个单元测试。
-
谢谢,但不是真的,因为它适用于 Web API 2,它是 UnitTesting。我对 .net core 2.0 的集成测试很感兴趣。
标签: c# integration-testing asp.net-core-2.0