对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"))) { }

       }

   }

原文地址:https://www.cnblogs.com/flyaway100/p/3483733.html