下面以上一篇文章中set注入的第一個實例爲測試對象。進行單元測試。java
1,拷貝jar包ide
junit-3.8.2.jar(4.x主要增長註解應用)單元測試
2,寫業務類測試
- public class User{
- privateString username;
-
- publicString getUsername() {
- returnusername;
- }
- publicvoid setUsername(String username) {
- this.username= username;
- }
-
-
- publicString login() throws Exception{
- if("admin".equals(username){
- return"success";
- }else{
- return"error";
- }
- }
- }
3,定義測試類this
測試類最好單獨創建項目,或者單獨定義文件夾存儲,須要繼承junit.framework.TestCasespa
4,增長測試方法.net
測試方法必須是public,不該該有返回值,方法名必須以test開頭,無參數code
測試方法是有執行前後順序,按照方法的定義前後順序對象
多個測試方法對同一個業務方法進行測試,通常每一個邏輯分支結構都有測試到。blog
- public class TestUserextends TestCase{
- publicvoid testUser_Success() throws Exception{
-
- Useraction = new User();
- action.setUsername("admin");
-
-
- Stringresult = action.login();
-
-
- assertEquals("success",result);
- }
- }
運行程序,若是測試成功會出現以下圖所示的結果
![](http://static.javashuo.com/static/loading.gif)
若是運行失敗,有方法沒有經過測試,那麼就會顯示出在哪一個方法出錯了。上圖中綠色的條會變成紅色的。
5,測試類的生命週期方法
-
- @Override
- protectedvoid setUp() throws Exception {
- System.out.println("setUp...");
- }
-
- @Override
- protectedvoid tearDown() throws Exception {
- System.out.println("tearDown...");
- }
setUp方法會在每個測試方法前執行一次。tearDown方法會在每個測試方法後執行一次