2011-10-23 6 views
0

CustomerController.cs: -Asp.net MVCテスト

public ActionResult Details(int id) 
    { 
     CustomerDataContext cs = new CustomerDataContext(); 
     var query = cs.Customers.Where(m => m.CustId == id).Select(m => m); 
     Customer cust = new Customer(); 
     foreach (var q in query) 
     { 

      cust.CustId = q.CustId; 
      cust.Name = q.Name; 
      cust.Salary = q.Salary; 
      cust.JoiningDate = q.JoiningDate; 
     } 
     return View("Details",cust); 
    } 

CustomerControllerTest.cs: -

[TestMethod] 
public void TestDetailsViewData() 
{ 
    CustomerController controller = new CustomerController(); 
    var result = controller.Details(5) as ViewResult; 
    Customer cust = result.ViewData.Model as Customer; 
    Assert.AreEqual(5,cust.CustId); 

} 

私のテストが失敗し、私は次のエラーmesssage取得: 試験方法MvcApplication1.Testsを。 Controllers.CustomerControllerTest.TestDetailsViewData例外を投げました: System.NullReferenceException:オブジェクト参照がオブジェクトのインスタンスに設定されていません。

+0

デバッガを使用してコードをステップ実行するとどうなりますか?どのラインが例外を投げていますか? – Amy

+0

私はそのCustomerDataContextを使用することができないと思う....テストのために利用可能なコンテキストですか? –

+0

問題が解決しました。それはdatacontextの問題でした。私はtestprojectにconnectionstringを持っていませんでした。今はその仕事。 –

答えて

0

問題を解決しました。 接続文字列がありませんでした。

関連する問題