路是爬出來的

          [導入]單元測試之實踐一,關于設計的常見分層

                  我做過的項目不多。也就幾個。做項目的經歷是個學習的過程。

                 第一個項目,純Jsp,沒有任何的java類,當時就覺得好郁悶啊。做久了,根本找不到北。

                 第2個項目:開始會用些javabean來做了。但是還是一個字好亂。

                 第3個項目:開始使用hibernate, 只是對數據庫層做了些簡單的封裝,修改起來比較好了點

                 第4個項目:研究Webwork+spring+hibernate。終于實現了所謂的MVC了。哈哈,該起程序來終于開始有點爽了。

                第5個項目: 開始引入了單元測試,現在還在很懵懂在學習中,為了更好的測試,我們開始努力寫出更高質量的代碼。所以對軟件的分層更細致了些。



                我們可以從測試來分出上的設計的好壞。

                1,純jsp,根本無從單元測試,我想就是那些大牛們也很難寫出這樣的測試代碼吧

                2,對于純粹只有get/set的javabean而言,我想應該是沒有必要做單元測試的。如果有邏輯代碼的話,測試起來也是相當困難的,因為你不知道里面的邏輯代碼跟多少個類大了交道,你會為了測試這段代碼,建立相關的環境,比如啟動EJB,Web容器等。跟難預料的是,跟你耦合的類未必就是正確的,其實你的測試代碼跟你的javabean邏輯是對的,但是因為你引用的類(也就是耦合類)的邏輯是錯誤的,這將導致你的測試是個紅色,“真的很抱歉,其實我也不想這樣的,單元測試說”。 這樣就足以證明是你的設計問題了。并不是單元測試的問題。所以說第個項目測試是很難測是的。只是比不能測試好一點點。

                3,至于第3個跟第2個差不多。

                4,第4個由于對每個層做了細致設計,所以設計測試代碼容易點,而且可以通過easymock等工具進行分層測試,這樣可以做到更細粒度的測試,對測試覆蓋率也是很有幫助的。下面我將主要通過第4個項目的用戶注冊例子來講單元測試的各個方面。



          先看下,源代碼的包結構。





          接下來看下流程圖。

          可以很清楚的知道,沒一層做些什么工作,接下的文章,我將會根據我的設計習慣,一一給出他們相應的測試代碼。希望高手們指教。

          我不會繪制UML圖,所以只好手工來畫,可惜手機像素不高,所以。。。。






          文章來源: http://wuhua.javaeye.com/blog/38259

          posted on 2006-12-30 08:39 路是爬出來的 閱讀(92) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 八宿县| 长泰县| 淮北市| 松潘县| 隆回县| 甘肃省| 大丰市| 墨竹工卡县| 马关县| 城步| 灌南县| 桦川县| 萝北县| 颍上县| 海林市| 鸡泽县| 吉安县| 灌云县| 稷山县| 房山区| 澄迈县| 咸宁市| 微山县| 阳高县| 隆德县| 光山县| 宽甸| 广宁县| 高尔夫| 衡东县| 加查县| 太和县| 永善县| 阿巴嘎旗| 涪陵区| 红桥区| 西乌珠穆沁旗| 同江市| 义乌市| 集安市| 清丰县|