2011-05-12 427 views
2

我只是想知道與單元測試和實現測試有什麼不同。我知道單元測試是使用定義的輸入來測試你的模塊/類/對象,並根據一些定義的輸出來檢查結果,但是實現測試做了什麼?你如何做?另外,實現測試在開發生命週期中是否適合?執行測試和單元測試

回答

6

「執行測試」不是一個常見的表達方式。我懷疑你的意思是「集成測試」,因爲這是常用的,特別是與單元測試相反。

集成測試裝置測試多個部件或系統的所有共同行動。通常,測試通過常規用戶界面模擬實際用戶與系統一起工作。

的好處是,你不只是測試每個組件是否履行其合同,也無論他們是由並正確配置和預期互動 - 東西,你不能與單元測試趕上。另一方面,通常很難用集成測試窮舉地測試邊界條件,它們不太穩定並且需要更長的時間來執行。當然,在大多數系統正常工作之前,它們不能運行(甚至不能寫入)。

因此,集成測試在開發週期比單元測試更晚發生。

+0

謝謝@Michael Borgwardt。有沒有可以提供幫助的應用程序?我記得有一個應用程序,我看到很多天以前欺騙瀏覽器。您可以對其進行編碼以觸發事件並返回結果,例如提交表單 – 2011-05-12 15:10:32

+0

您可能正在考慮Selenium。 – 2011-05-12 16:35:10

+0

@Richard:有很多這樣的測試框架,但是對於網絡應用程序來說,現在最流行的就是Selenium(它並不欺騙瀏覽器,但使用插件來遠程控制一個真正的瀏覽器)。 – 2011-05-13 07:40:01

0

我與Visual Studio測試工具,Testdriven.net和Excel的工作,所有的人都在一起很好的解決方案,我寫這個單元測試

[TestMethod()] 
public void viewFolderTest() 
{ 
    string Err = ""; 
    connect_Excel("viewFolderTest");    
    DcDms actual; 
    DaDoc target = new DaDoc(); 

    for (int i = 10; i < ds.Tables[0].Rows.Count; i++) 
    { 
     Err = ""; 

     TestRow = ds.Tables[0].Rows[i]["Row"].ToString(); 
     string expected = ds.Tables[0].Rows[i]["expected"].ToString(); 
     string ParentId = ds.Tables[0].Rows[i]["ParentId"].ToString(); 

     actual = target.viewFolder(ParentId); 

     try 
     { 
      Assert.AreEqual(expected,actual.Tables[DcDms.Dms_vrFileFolder].Rows.Count.ToString()); 
     } 
     catch (System.Exception ex) 
     { 
      Err = ex.Message; 
      if (Err.Length >= 254) 
      { 
       Err = Err.Substring(0, 255); 
      } 
      Update_Excel("viewFolderTest", "ERROR", Err, "Row", TestRow); 
     } 
     Update_Excel("viewFolderTest", "actual", actual.Tables[DcDms.Dms_vrFileFolder].Rows.Count.ToString(), "Row", TestRow); 
     if (Err == "") 
     { 
      Update_Excel("viewFolderTest", "ERROR", "Pass", "Row", TestRow); 
     } 
    }   
} 
+1

這個問題不僅僅是實現。 – 2012-09-25 21:28:24

1

我聽到兩個不同的上下文中執行測試。首先,它可以是對設計的測試。如果你有複雜的邏輯,在把它交給編碼器之前,你先完成邏輯,這樣你就不會浪費時間去實現你應該設計得更好的東西。我還聽說它用作V & V(驗證和驗證)的另一個術語,您可以確保您的實施符合您的要求並且符合客戶的願景。

0

執行是PRE或POST。

在這種情況下,實施辦法「將活」即 - 進入生產。

所以實施前的檢測手段在預督促測試之前住。 實施後測試意味着在現場環境中進行測試,一旦實現。