作者:陳市明/Slipper Feng
摘自:http://www.tkk7.com/JPeanut
Junit
目前是
java
種最為流行的單元測試的框架,開發人員是編寫設計模式的三大牛人之一。
junit
靈活的使用了多種模式,使得擴展非常之容易。他的擴展是所有單元測試框架是最多的,但是很多擴展都是直接繼承自
TestCase
,這個就導致用了這個擴展就沒法使用其他的擴展了,比如,用了
dbunit
就不能再用
easy struts
了(除非,我們對擴展進行重寫)。
? 為了解決這個問題,我在Junit之上還封裝了一層TestFrame,使得junit能夠很容易的同時使用多個擴展。我們這里的設計思想是:
1.?
把擴展寫成插件式,我只要通過寫一個
plugin
接口讓他集成進我們的框架中
2.?
后期對架構的功能擴展完全可以通過插件實現。目前,已經寫了
dbunit
,
struts-easy,imon
fk
,
JMS
電文的
plugin
。通過插件的方式,我們就可以很容易的解決
junit
的硬傷:測試數據硬代碼。
3.?
插件的添加,無需修改架構及其原有的測試腳本,只需要在“項目的
TC
”中在注冊中心對插件注冊就可以獲得插件的所有的功能
4.?
架構是面向對項目的,所有不同架構的項目可以使用同一套底層架構,不一樣的只是“項目
Tc
”
5.?
Test Frame Work
、所有的
plugin
和項目
TC
都可以各自獨立打成
jar
,這樣框架可以很方便的進行局部升級
?
(呵呵,有了電文插件后,就很容易的對我們的項目進行自動化的單元測試。在次之前,我們一直沒有對電文進行有效的自動化的單元測試,
mock
技術可以實現,但是,對于需求變化
mock
沒有很好的解決辦法)