• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 使用測試驅動

    發表于:2009-05-21來源:作者:點擊數: 標簽:驅動
    這篇記錄了一些我使用 測試 驅動的一些感想。 因為正好要實現一個 網絡 通訊錄,這是個不大的項目,就拿來練手了。 記得以前剛開始寫程序時,要在里面添加一個功能時,都是在主程序里直接添加,對小程序來講這是最快的方法,但隨著項目越來越大。寫一個小功能
    這篇記錄了一些我使用測試驅動的一些感想。
            因為正好要實現一個網絡通訊錄,這是個不大的項目,就拿來練手了。
            記得以前剛開始寫程序時,要在里面添加一個功能時,都是在主程序里直接添加,對小程序來講這是最快的方法,但隨著項目越來越大。寫一個小功能都要在主程序上運行好些遍,當碰到有登陸框時更是麻煩,就是采用讓啟動自動化,速度還是很慢。后來就干脆分離出來做,將小功能的接口都想好,另建一個工程。這樣對實現低耦合也很有好處,因為引用不到外部的數據,只能以建立接口的方式。但是還是遇到了麻煩,每個小功能都建立一個工程來做,顯然很難管理,特別是當要做個普通的類實現一個小功能時。這個方法我想更適合項目中一些功能相對比較獨立的模塊的。因此我的代碼測試這塊做的并不是很細,直到后來發現了X-UNIT。
            原來測試可以做到這么細的,并且是全自動的~~在將功能分了一個個類后,對一些主要的類都寫一個繼承于TTestCase的類,加入測試工程,具體可參考X-UNIT的Demo,網上也有很多這方面的教程。
            比如我要寫個TPersons類,實現人員的添加、刪除、查找、選擇分組等等功能;分別為Add,Del,Find,PersonsOfGroup等等方法?,F在我們可以先寫測試類        TPersonsTest,里面有TestAdd,TestDel,TestFind,TestPersonOfGroup等方法,分別用來測試TPersons類的方法。像TestDel我是這樣(DELPHI語言):
      TestAdd;//添加一個記錄
      try
        FPersons.Del(0);//測試刪除
      except
        Check(false,'Del error');
      end;
      Check(FPersons.Count = 0,'Del Failed');//刪除是否成功
     
            接下來我們再編寫Tpersons.del的具體實現。這個在XP中叫測試驅動,很Cool的名字吧:)
            然后我們運行時測試工程會自動調用,顯示錯誤的地方,或測試不通過的地方。像調用FPersons.Del(0)后,FPersons.Count還為1時就顯示'Del Failed'。根據不同的被測試類要考慮不同的情況,模擬各種輸入值等等。
            最后所有測試都通過,一片綠色~~~心里特安心!
            初看在寫個類時都編寫測試用例的方式感覺浪費時間,先不說調查數據和XP開發上說的各種好處。起碼我自己覺的我的代碼都是能穩定工作。特別是代碼行越來越多時,每次大的修改后,心里感覺都不塌實,怕哪里有遺漏。但使用測試驅動方式,只要測試寫的好,每次修改,運行測試,只要看她的紅綠燈就OK了。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>