不要認為壓力大
就不寫測試代碼
相反編寫測試代碼會使你的壓力逐漸減輕
應為通過編寫測試代碼
你對類的行為有了確切的認識
你會更快地編寫出有效率地工作代碼
下面是一些具體的編寫測試代碼的技巧或較好的實踐方法
不要用TestCase的構造函數初始化Fixture
而要用setUp()和tearDown()方法
不要依賴或假定測試運行的順序
因為JUnit利用Vector保存測試方法
所以不同的平台會按不同的順序從Vector中取出測試方法
避免編寫有副作用的TestCase
例如
如果隨後的測試依賴於某些特定的交易數據
就不要提交交易數據
簡單的會滾就可以了
當繼承一個測試類時
記得調用父類的setUp()和tearDown()方法
將測試代碼和工作代碼放在一起
一邊同步編譯和更新
(使用Ant中有支持junit的task
)
測試類和測試方法應該有一致的命名方案
如在工作類名前加上test從而形成測試類名
確保測試與時間無關
不要依賴使用過期的數據進行測試
導致在隨後的維護過程中很難重現測試
如果你編寫的軟件面向國際市場
編寫測試時要考慮國際化的因素
不要僅用母語的Locale進行測試
盡可能地利用JUnit提供地assert/fail方法以及異常處理的方法
可以使代碼更為簡潔
測試要盡可能地小
執行速度快
JUnit和ant結合
ant 提供了兩個 target
junit 和 junitreport 運行所有 測試用例
並生成 html 格式的報表
具體操作如下
將 junit
jar 放在 ANT_HOME\lib 目錄下
修改 build
xml
加入如下 內容
<property name=report value=report />
<target name=junitreport depends=clean compile>
<junit printsummary=on fork=true haltonfailure=false failureproperty=testsfailed showoutput=true>
<classpath refid=myclasspath/>
<formatter type=xml/>
<batchtest todir=${report}>
<fileset dir=${build}>
<include name=**/*Test*/>
</fileset>
</batchtest>
</junit>
<junitreport todir=${report}>
<fileset dir=${report}>
<include name=TEST*xml/>
</fileset>
<report format=frames todir=${report}/>
</junitreport>
<fail if=testsfailed> One or more tests failed check the report for detail </fail>
</target>
[] [] []
From:http://tw.wingwit.com/Article/program/Java/ky/201311/29246.html