Springside里面的Test現在已經比較豐富,而且徐x貢獻了基于selenium rc的functional test,這些東西是很好的學習資料。尤其是functional test,讓QA的任務可以在Java里面實現了,而且是基于瀏覽器的測試。
推薦看看rainmundox的
Selenium Better Pratice但是首先卻遇到了問題:
在Eclipse里面運行functional-test這個target的時候發現報錯(test target葉出錯的):
Could not create task or type of type: junit.
我就想當然的把junit-3.8.1.jar拷貝到我的%ANT_HOME%/lib下面了,結果問題依舊。
然后google了下,發現是這樣的:
“該信息表明 Ant 沒有找到任務或任務所依靠的類。 Ant 試圖加載 Junit JAR 文件。當在 IDE 外部使用 Ant 時,應該把 junit.jar 放在 %ANT_HOME%/lib 文件夾。使用 Eclipse 時該任務無法工作,因為它使用自身版本的 Ant 。所以 junit.jar 必須放在 Eclipse 的 Ant 文件夾中,即 %ECLIPSE_HOME%/plugins/org.apache.ant_1.6.2/lib (很顯然,不同版本的 Eclipse 會有不同版本的 Ant )。”
在Eclipse 3.2里面已經是ant_1.6.5了,拷貝過去問題還是沒有解決。
然后走了不少彎路。
最后,發現其實是這樣的。上面提示了Eclipse用的自己的ant,這個時候你拷貝junit-3.8.1.jar過去并不起作用,因為ant設置不會自動掃描那個目錄的/lib。
解決方法目前看最好的就是在Eclipse的Window->Preferences->Ant->Runtime->Classpath里面Ant_Home你指定一下就可以了,可以是你自己的Ant或者Eclipse/plugins里面的ant,這沒關系,然后它就會自動掃描相應/lib目錄了(之前你應該已經把junit-3.8.1.jar拷貝過去了)。
然后就搞定了。注意,只有在Eclipse運行Ant才有可能遇上這個問題:D
呵呵,問題搞定了,先review一下Test,看看有什么能解決的。然后我想先分析一下SpringSide的DAO、Manager這種結構,明后天。