测试代码:
namespace BLLTest
{
[TestFixture]
public class AdminControlTest
{
[Test]
public void Insert()
{
Console.WriteLine("测试开始");
AdminInfo model = new AdminInfo();
model.adminID = Guid.NewGuid();
model.adminName = "wei";
model.adminPWD = "wei";
model.email = "[email protected]";
model.isLock = CheckFlag.激活;
model.loginTimes = 1;
model.recentLoginIP = "202.193.56.230";
model.recentLoginTime = DateTime.Now;
model.recentLogoutTime = DateTime.Now;
model.registeTime = DateTime.Now;
model.trueName = "weijiayi"; Console.WriteLine("开始插入");
AdminControl.Insert(model);
Console.WriteLine("添加成功");
}
}
}
----------------------------------------------------------------------------------------
Error and Failures 显示:
BLLTest.AdminControlTest.Insert:
System.TypeInitializationException : “PDMS.BLL.AdminControl”的类型初始值设定项引发异常。
----> System.ArgumentNullException : 值不能为空。
参数名: assemblyString在 PDMS.BLL.AdminControl.Insert(AdminInfo model)
在 BLLTest.AdminControlTest.Insert() 位置 F:\VSProject\PDMS.root\PDMS\BLLTest\AdminControlTest.cs:行号 48
--ArgumentNullException
在 System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
在 System.Reflection.Assembly.Load(String assemblyString)
在 PDMS.DALFactory.DataAccess.CreateAdmin() 位置 F:\VSProject\PDMS.root\PDMS\DALFactory\DataAccess.cs:行号 19
在 PDMS.BLL.AdminControl..cctor() 位置 F:\VSProject\PDMS.root\PDMS\PDMS.BLL\AdminControl.cs:行号 17--------------------------------------------------------------------------------------------用页面来测试是没有问题的!而且通过页面调用AdminControlTest.Insert()也没有问题!引用上应该也没有问题,因为把页面上引用的全部放到上面测试代码中也不行。
难道NUnit对反射有问题?请高手指教!谢谢了~
namespace BLLTest
{
[TestFixture]
public class AdminControlTest
{
[Test]
public void Insert()
{
Console.WriteLine("测试开始");
AdminInfo model = new AdminInfo();
model.adminID = Guid.NewGuid();
model.adminName = "wei";
model.adminPWD = "wei";
model.email = "[email protected]";
model.isLock = CheckFlag.激活;
model.loginTimes = 1;
model.recentLoginIP = "202.193.56.230";
model.recentLoginTime = DateTime.Now;
model.recentLogoutTime = DateTime.Now;
model.registeTime = DateTime.Now;
model.trueName = "weijiayi"; Console.WriteLine("开始插入");
AdminControl.Insert(model);
Console.WriteLine("添加成功");
}
}
}
----------------------------------------------------------------------------------------
Error and Failures 显示:
BLLTest.AdminControlTest.Insert:
System.TypeInitializationException : “PDMS.BLL.AdminControl”的类型初始值设定项引发异常。
----> System.ArgumentNullException : 值不能为空。
参数名: assemblyString在 PDMS.BLL.AdminControl.Insert(AdminInfo model)
在 BLLTest.AdminControlTest.Insert() 位置 F:\VSProject\PDMS.root\PDMS\BLLTest\AdminControlTest.cs:行号 48
--ArgumentNullException
在 System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
在 System.Reflection.Assembly.Load(String assemblyString)
在 PDMS.DALFactory.DataAccess.CreateAdmin() 位置 F:\VSProject\PDMS.root\PDMS\DALFactory\DataAccess.cs:行号 19
在 PDMS.BLL.AdminControl..cctor() 位置 F:\VSProject\PDMS.root\PDMS\PDMS.BLL\AdminControl.cs:行号 17--------------------------------------------------------------------------------------------用页面来测试是没有问题的!而且通过页面调用AdminControlTest.Insert()也没有问题!引用上应该也没有问题,因为把页面上引用的全部放到上面测试代码中也不行。
难道NUnit对反射有问题?请高手指教!谢谢了~
例如 连接数据库 等
InsertTest NUint 测试方法 NUint.MenuControlTest.InsertTest 引发异常: System.TypeInitializationException: “DBUtility.TableHelper”的类型初始值设定项引发异常。 ---> System.NullReferenceException: 未将对象引用设置到对象的实例。好像都是跟反射有关,因为AdminControl是通过 private static readonly IAdmin dal = DataAccess.CreateAdmin();反射来得到一个SQLServerDAL实例的。
唉,这错误实在够郁闷的。噢~我和LZ做同一个项目的。