今天继续昨天的话题——单元测试,不过是在ASP.NET 5中的单元测试。

在当前的Visual Studio 2015 CTP6中,MSTest是不支持对ASP.NET 5项目进行单元测试的。因而,要对ASP.NET 5进行单元测试(或集成测试),就需要引入其它测试框架,比如XUnit.NET。

引入XUnit.NET很简单,就是添加XUnit.NET的Nuget包(在package.json文件中添加如下内容):

"xunit": "2.1.0.0-beta1-build2945",

"xunit.runner.aspnet": "2.1.0.0-beta1-build60",

"xunit.runner.visualstudio": "2.1.0.0-beta1-build1051"

要在测试中集成LocalDB,一般分作3个步骤:

  1. 把生成数据库的sql拷贝为一个部署项。本文提供了一个示例代码ItemDeployment类来完成这件事情。
  2. 执行sql来创建数据库。本文提供了一个示例代码LocalDb类完成这件事情。
  3. 在测试代码中访问数据库中的数据,验证正确性。

由于代码比较复杂,我在这里就不转贴了,有兴趣的读者就跳转到文章去自己看吧。

原文地址:http://blog.developers.ba/localdb-for-database-integration-testing-in-asp-net-5-project-and-xunit-net/

转载于:https://www.cnblogs.com/redmoon/p/4436277.html

如何在ASP.NET 5和XUnit.NET中进行LocalDB集成测试相关推荐

  1. [第二篇]如何在ASP.Net Core的生产环境中使用OAuth保护swagger ui

    在我上篇文章如何在ASP.Net Core的生产环境中保护swagger ui中,我们讨论了如何使用基本身份验证来保护 swagger ui. 使用 OAuth 2.0 和 OpenIdConnect ...

  2. NET问答: 如何在 ASP.NET Core 的 .json 文件中读取 AppSettings ?

    咨询区 Oluwafemi: 在 appsettings.json 中我有如下的 AppSettings 实体数据,如下代码所示: {"AppSettings": {"t ...

  3. 如何在 ASP.NET 4.6 与 IIS10 中运用 HTTP/2 ?

    在过去十年中,Web 技术已经取得了种种进展.从基本的 HTML 开始,网页发展出更丰富的外观和感觉,变得更加直观,对用户更加友好并且越来越大放异彩.这些变化的关键贡献来自于一些新的和翻新技术,且借力 ...

  4. 如何在asp.net mvc3中使用HttpStatusCode

    下载了asp.net mvc 4的源码看了看,没怎么看清楚.不过个人觉得MVC4 beta中Web API这个是比较不错的,虽然说它是往传统回归. web api最好的莫过于它更加适合使用jquery ...

  5. 如何在asp.net页面使用css和js

    一.如何在asp.net页面中使用css 1.可以直接写在需要样式控制的控件里  例如:<div style="border:#ff6100 1px solid">&l ...

  6. 如何在 ASP.NET Core 中使用 HttpClientFactory ?

    ASP.Net Core 是一个开源的,跨平台的,轻量级模块化框架,可用它来构建高性能的Web程序,这篇文章我们将会讨论如何在 ASP.Net Core 中使用 HttpClientFactory. ...

  7. 如何在 ASP.Net Core 中使用 Autofac

    依赖注入可以有效的实现对象之间的 松耦合 并能够实现代码的可测试和可维护性,ASP.Net Core 提供了一个极简版的容器实现对 依赖注入 的原生支持,然而内置的依赖注入容器相比成熟的 依赖注入容器 ...

  8. 如何在 ASP.NET Core 中使用 LazyCache

    微软的 ASP.NET Core 已经是一个非常流行的用于构建 高性能, 模块化 并能运行在 Windows, Linux, MacOS 上的 WEB 框架,通常能够让程序保持高性能的一个有效途径就是 ...

  9. 如何在 ASP.Net Core 中使用 Lamar

    ASP.Net Core 自带了一个极简的 开箱即用 的依赖注入容器,实际上,你还可以使用第三方的 依赖注入容器 来替代它,依赖注入是一种设计模式,它能够有效的实现对象之间的解耦并有利于提高单元测试和 ...

最新文章

  1. 离群点检测算法-基础概念
  2. 开发日记-20190830 关键词 读书笔记《Unix环境高级编程(第二版)》DAY 6
  3. asp.net2.0中session在ie9下不能保存的问题
  4. 内核中的page fault copy_from_user
  5. python教程循环语句,Python基础教程之循环语句(for、while和嵌套循环)
  6. 如何在 ASP.NET Core 中使用 HttpClientFactory ?
  7. 这四点列出了国产手机和苹果手机屏幕之间的不同之处
  8. 多个excel工作簿合并_多个excel工作簿合并到一个工作簿中
  9. bluez5.50+pulseaudio实现蓝牙音响音频播放
  10. WinForm——MDI窗体
  11. Yolov3:win10下训练自己的数据(GPU版)(详细步骤)
  12. AE效果:过时与抠像
  13. K8S污点taint的声明语法、污点的设置、查看和去除
  14. Timed-Elastic-Band局部路径规划算法
  15. i510400和i512400差距
  16. 完美正方形---蓝桥杯练习
  17. 【甄选靶场】Vulnhub百个项目渗透——项目五十二:Fowsniff-1(任务挟持)
  18. LeetCode(python3)——234.回文联表
  19. 混合硬盘计算机,什么是混合硬盘 混合硬盘和固态硬盘的区别详解
  20. Chrome浏览器广告屏蔽方法

热门文章

  1. 24帧动画走路分解图_人眼只能分辨24帧?我们来聊聊高刷新率的意义
  2. android 存储无法写入,在Android中的外部存储中写入文件
  3. vue切换菜单时不需要页面刷新_antd vue 刷新保留当前页面路由,保留选中菜单,保留menu选中操作...
  4. 用python操作浏览器的三种方式_python的webbrowser模块支持对浏览器进行一些操作...
  5. 【Anaconda】InvalidVersionSpecError: Invalid version spec: =2.7
  6. About 4B/5B
  7. 为什么别人有微粒贷,而你没有?
  8. 51单片机程序下载、ISP及串口基础知识
  9. 计算机控制系统为什么会受到干扰,浅谈计算机控制系统中的干扰及其抑制措施...
  10. 回溯法基本思想_LeetCode--回溯法心得