对ASP.NET Entity FrameWork进行单元测试
添加一个测试用的类库:将Web.config中的connectionstrings节点下的东东复制一份到刚添加的类库的app.config下
使用NUint+TestDriven.net进行测试:
如下:
[Test]
public void AddArticle()
{
URPmanagementEntities urpentity = new URPmanagementEntities();
T_Article article = new T_Article { WebUserID=1, Title="danche", Content="danche", AddDate=DateTime.Now, CatalogID=2 };
T_Article article2 = new T_Article { WebUserID = 1, Title = "danche2", Content = "danche2", AddDate = DateTime.Now, CatalogID = 2 };
urpentity.AddToT_Article(article2);
urpentity.AddToT_Article(article);
urpentity.SaveChanges();
}
右键选择Test With—Debugger,会出现“指定的命名连接在配置中找不到、非计划用于 EntityClient 提供程序或者无效。”异常
解决办法:在AddArticle()方法范围内右键选择“创建单元测试“,在弹出的窗口中选择测试方法,确定后在测试视图中选择测试方法,右键运行。
此方法替代了NUnit+TestDriven.net ,但是不太好,事实上它有两个测试项目,一个是自己建的另一个是它自动生成的。
我觉得还是用LinqToSql好,它的东东用NUnit+TestDriven.net 测试没有任何的问题。
图是项目目录:
测试类:
public class UserTest
{
public UserTest()
{
log4net.Config.XmlConfigurator.Configure();
}
[Test]
public void addUserTest()
{
T_User user = new T_User();
user.UserID = new Guid("42DC72DF-BF88-49CC-A8ED-9075BE927AF7");
user.UserName = "dan";
user.TrueName = "谭一丹";
user.PassWord = "123456";
user.RoleID = 2;
user.Phone = "1583780965";
if (UserBLL.AddUserBLL(user))
{
}
}
[Test]
public void UpdateUserTest()
{
T_User user = UserBLL.SelectUserBLL(new Guid("42DC72DF-BF88-49CC-A8ED-9075BE927AF7"));
user.UserName = "谭孟";
if (UserBLL.UpdateUserBLL(user))
{
}
}
[Test]
public void DeleteUserTest()
{
if (UserBLL.DeleteUserBLL(new Guid("42DC72DF-BF88-49CC-A8ED-9075BE927AF7"))) { }
}
}
对ASP.NET Entity FrameWork进行单元测试的更多相关文章
- LinqToSql和ASP.NET Entity FrameWork 中使用事务
ASP.NET Entity FrameWork中: int flag = -1; if (this.URPmanagementEntities1.Connection.State != System ...
- ASP.NET Entity Framework with MySql服务器发布环境配置
首先,.net应该自带Entity Framework,所以服务器只要有对应版本的.net Framework就OK! 我们在开发环境中一般会直接使用edmx来管理应用程序与数据库的交互操作,所有与数 ...
- SQLite to Asp.net Entity Framework 部署问题
最近做了一个小应用,使用SQLite做数据库.开始用DBLINQ的时候,做一个LINQ查询出现不支持的问题.后来看到Entity Framework是可以支持SQLite的,于是很快转换过来.完成开发 ...
- Working with Data » 使用Visual Studio开发ASP.NET Core MVC and Entity Framework Core初学者教程
原文地址:https://docs.asp.net/en/latest/data/ef-mvc/intro.html The Contoso University sample web applica ...
- MVC中使用EF(1):为ASP.NET MVC程序创建Entity Framework数据模型
为ASP.NET MVC程序创建Entity Framework数据模型 (1 of 10) By Tom Dykstra |July 30, 2013 Translated by litdwg ...
- [转]Creating an Entity Framework Data Model for an ASP.NET MVC Application (1 of 10)
本文转自:http://www.asp.net/mvc/overview/older-versions/getting-started-with-ef-5-using-mvc-4/creating-a ...
- Entity Framework 6.1-Code First【转】
Entity Framework 6.1-Code First 分类: Entity Framework 2014-04-21 14:56 2034人阅读 评论(0) 收藏 举报 entityen ...
- Model和Entity Framework
Model和Entity Framework 上一节:ASP.NET MVC 5 入门教程 (4) View和ViewBag 下一节:ASP.NET MVC5 + EF6 入门教程 (6) View中 ...
- ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第一章:创建基本的MVC Web站点
在这一章中,我们将学习如何使用基架快速搭建和运行一个简单的Microsoft ASP.NET MVC Web站点.在我们马上投入学习和编码之前,我们首先了解一些有关ASP.NET MVC和Entity ...
随机推荐
- 洗清UI自动化鸡肋说的不白之冤
人类文明发展的一个重要标识是工具的诞生,当人类开始制作工具来提高生产力时,就逐渐拉开了与其他生物的距离.曾在2013年,<Google如何测试软件>中提到的分层自动化金字塔,轰动业界.而在 ...
- 解决setInterval计时器不准的问题
在js中如果打算使用setInterval进行倒数,计时等功能,往往是不准确的,因为setInterval的回调函数并不是到时后立即执行,而是等系统计算资源空闲下来后才会执行.而下一次触发时间则是在s ...
- Django基础篇之数据库选择及相关操作
在djanjo框架中我们最常用的框架分别就是mysql和sqlit了,下面我们将分别讲述一下这俩种数据库的基础必备知识 mysql 一.利用命令创建(在终端上执行) 1.首先创建一个project项目 ...
- 如何去掉有背景图的a标签的边框
有两种情况: 1.<a href="#" style="background:url(../images/download.png);"></ ...
- 洛谷P1519 穿越栅栏 Overfencing
P1519 穿越栅栏 Overfencing 69通过 275提交 题目提供者该用户不存在 标签USACO 难度普及/提高- 提交 讨论 题解 最新讨论 USACO是100分,洛谷是20分 为什么 ...
- windows异常调用顺序
(一) 发生异常时系统的处理顺序(by Jeremy Gordon, Hume): 1.系统首先判断异常是否应发送给目标程序的异常处理例程,如果决定应该发送,并且目标程序正在被调试,则系统 挂 ...
- CSS常用布局整理(二)
1-2-1单列变宽布局 side列定宽300px,content列变宽,尺寸是100%-300px.核心的问题就是浮动列的宽度应该等于“100% - 300px”,而CSS显然不支持这种带有减法运算的 ...
- HTML转义字符集合
readme:这次可以不readme了,因为这个是我copy过来的~ ISO Latin-1字符集: — 制表符Horizontal tab — 换行Line feed — 回车Carriage ...
- sql 截取字符串第一次出现字符之前的数据
截取sql 第一次出现字符之前的数据 (select left( a.ChangeProductName,charindex(',', ChangeProductName)-1)) as Chang ...
- 用PHP实现守护进程任务后台运行与多线程(php-resque使用说明)
消息队列处理后台任务带来的问题 项目中经常会有后台运行任务的需求,比如发送邮件时,因为要连接邮件服务器,往往需要5-10秒甚至更长时间,如果能先给用户一个成功的提示信息,然后在后台慢慢处理发送邮件的操 ...