junit jumpstart
這篇文章是junit的入門,文章主要包含下面的幾個部分:
1.junit是什么?我們為什么要使用junit這個框架?使用junit框架能夠給我們帶來什么?
2.一個簡單的junit的測試demo。
1.junit是什么?
JUnit is a simple framework to write repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks.簡單的說junit是一個簡單的旨在編寫重復tests的框架。junit是xunit的在java方面的具體實現。
2.我們為什么使用junit?使用junit給我們帶來了什么?一個簡單的junit的測試的demo(junit 3.8.2)。
待測試代碼:
/** * */ package com.jefferyxu.jumpstart; /** * 一個簡單的計算器的實例 * @author jefferyxu * */ public class Calculator { public double add(double a, double b) { return (a + b); } }
如果不適用junit框架,簡單的來講如果只是測試add方法,可以這么來實現:
/** * */ package com.jefferyxu.jumpstart; /** * @author jefferyxu * */ public abstract class TestCalculator { /** * 如果沒有使用junit框架的話,測試上面的Calculator * 需要按照如下的方式. * @param args */ public static void main(String[] args) { Calculator calc = new Calculator(); double result = calc.add(10, 50); if (result != 60) { System.out.println("bad result :" + result); } } }
考慮到這個測試程序的可拓展性(除了add方法之外還需要測試其他的method),可以這么寫:
/** * */ package com.jefferyxu.jumpstart; /** * @author jefferyxu * */ public class TestCalculator { private int nbErrors = 0; public void testAdd() { Calculator calc = new Calculator(); double result = calc.add(10, 50); if (result != 60) { System.out.println("bad result :" + result); } } /** * 拓展其他的測試method */ public static void main(String[] args) { TestCalculator test = new TestCalculator(); try { test.testAdd(); /* * 拓展其他的測試method */ } catch(Throwable e) { test.nbErrors++; e.printStackTrace(); } if(test.nbErrors > 0) { throw new RuntimeException("threr are " + test.nbErrors + " errors."); } } }
顯然上面的TestCalculator能夠較好的完成test的工作,但是為了滿足這些條件規則的話,需要編寫很多的支持的代碼。如果你愿意一遍遍的編寫重復的代碼,那也ok。簡單的并且偷懶的方法就是使用junit的框架,這個框架為你省去了編寫這些“重復”代碼的工作。
使用junit框架來測試(這里忽略了junit的安裝步驟,直接使用的myeclipse 8.5):
代碼如下:
package com.jefferyxu.jumpstart; import junit.framework.TestCase; /** * @author Administrator * */ public class TestCalculator extends TestCase { public void testAdd() { Calculator calc = new Calculator(); double result = calc.add(10, 50); assertEquals(60, result, 0); } }
測試結果如圖:
顯然測試成功。需要通過上面的簡單的demo,我們需要注意如下的問題:
- 每個使用junit的測試類需要繼承自junit.framework.TestCase。
- 測試方法推薦使用testXXX的形式。
- 測試的類推薦使用TestXXX的形式。
轉載于:https://www.cnblogs.com/xuqiang/archive/2010/10/10/1953478.html
總結
以上是生活随笔為你收集整理的junit jumpstart的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用Oracle中fileopen命令加
- 下一篇: JS判断GridView中复选框有没有被