C#单元测试对象引用未设置为对象的实例

时间:2013-07-26 18:20:12

标签: c# unit-testing

我是单元测试的新手,我无法弄清楚为什么我会收到此错误。

有问题的方法是:

 public SqlDA(string ConnectionString)
    {
        this._CurrentConnection = new SqlConnection(ConnectionString);
        this._CurrentConnection.Open();
    }

我的单元测试是:

[TextFixture]
public class BasicTest
{
   public string connstring;
   public SqlDA da;

   [SetUp]
   public void SetUp()
   {
      connstring="Server=localhost;Database=db;user_id=user;password=password;Connect Timeout=1000";
      da = new SqlDA(connstring);
   }

   [Test]
   public void Test
   {
   string result = da.Method();
   Assert.AreEqual(0,result);
   }
}

它会在设置中抛出错误。我一直试图找出导致问题的原因,但没有运气。任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

成员变量da被声明为SqlDA类型,而在SetUp()中,您尝试为其分配一种DA。

如果DA类型不是从SqlDA派生的,那么成员变量da将为null。然后尝试调用da上的Method,这将无效,因为它为null。