单元测试 – 从TestServer测试asp.net 5 vnext中间件
发布时间:2020-12-16 03:38:21 所属栏目:asp.Net 来源:网络整理
导读:在Owin中,可以使用TestServer在单元测试中测试web api(参见本 blog). 这个功能是否适用于asp.net 5中间件? 更新: 根据下面的回答,我尝试使用TestServer,但是visual studio抱怨’名称空间名称’AspNet’在名称空间’Microsoft’中不存在(你……) 我使用Visu
在Owin中,可以使用TestServer在单元测试中测试web api(参见本
blog).
这个功能是否适用于asp.net 5中间件? 更新: 根据下面的回答,我尝试使用TestServer,但是visual studio抱怨’名称空间名称’AspNet’在名称空间’Microsoft’中不存在(你……) >我使用Visual Studio 2015 { "version": "1.0.0-*","dependencies": { "Microsoft.AspNet.Http": "1.0.0-*","Microsoft.AspNet.TestHost": "1.0.0-*","Microsoft.AspNet.Hosting": "1.0.0-*","Microsoft.AspNet.Testing" : "1.0.0-*","xunit": "2.1.0-beta1-*","xunit.runner.aspnet": "2.1.0-beta1-*","Moq": "4.2.1312.1622","Shouldly": "2.4.0" },"commands": { "test": "xunit.runner.aspnet" },"frameworks" : { "aspnet50" : { "dependencies": { } } } } 解决方法
它也可以在ASP.NET 5上使用:
Microsoft.AspNet.TestHost.
这是一个例子.中间件: public class DummyMiddleware { private readonly RequestDelegate _next; public DummyMiddleware(RequestDelegate next) { _next = next; } public async Task Invoke(HttpContext context) { Console.WriteLine("DummyMiddleware"); context.Response.ContentType = "text/html"; context.Response.StatusCode = 200; await context.Response.WriteAsync("hello world"); } } 测试: [Fact] public async Task Should_give_200_Response() { var server = TestServer.Create((app) => { app.UseMiddleware<DummyMiddleware>(); }); using(server) { var response = await server.CreateClient().GetAsync("/"); Assert.Equal(HttpStatusCode.OK,response.StatusCode); } } 您可以在the tests找到有关TestServer课程用法的更多信息. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 实体框架 – 使用伪造的DbContext和Autofixture以及Moq进行
- asp.net-mvc – 如何使用Ninject将服务注入授权过滤器?
- 具有干净输出的ASP.NET HTML控件?
- 覆盖ASP.NET AJAX Control Toolkit的TabContainer控件中的默
- asp.net-mvc – 为什么编码逗号URL?
- asp.net-mvc – 如何在使用Razor图表助手创建的图表中更改图
- ASP.NET MVC,Node.JS.他们可以互动吗?
- asp.net-mvc – 如何为每个ActionLink指定默认区域而不添加
- Asp.net MVC 集成AD域认证
- asp.net-mvc – 如何在保留控制器名称的同时分解ASP.NET MV
推荐文章
站长推荐
- asp.net – 会话和线程
- 实现不要在asp.net mvc中跟踪
- .net-core – 如何在Asp.net核心中使用Akka.Net
- asp.net – 在启动期间获取Web应用程序的URI
- asp.net-mvc – 在REST Web API调用中返回复杂对
- WeihanLi.Npoi 1.11.0/1.12.0 Release Notes
- asp.net-mvc – 不要在ASP .NET MVC 4 BundleCon
- asp.net-mvc – 是否有任何基于ASP.NET MVC订阅的
- asp.net-mvc – ASP MVC3在actionlink中插入html
- asp.net – 如何检查IIS是否在32位或64位模式
热点阅读