亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
了解JUnit核心類、接口及生命周期
作者:網絡轉載 發布時間:[ 2013/8/29 15:25:33 ] 推薦標簽:

兩種不同參數運行 TestCase

參數 1:

輸入:

Java代碼

    >java junit.textui.TestRunner  TestShoppingCart 

輸出:

Up
testPay!
Down
Up
testPayWithDiscount!
Down

參數 2:

輸入:

Java代碼

    > java junit.textui.TestRunner -m TestShoppingCart.testPayWithDiscount 

輸出:

Up
testPayWithDiscount!
Down

參數 1:TestCase 名字,該類的所有的以 test 開頭的 public 方法都會執行。

參數 2:參數 -m,僅僅運行該類的該方法。

TestRunner 還提供了其他的參數 -wait:(大響應時間),-v:查看 JUnit 版本號。從輸出可以看出,參數一: testPay(),testPayWithDiscount() 都運行;參數二:僅僅運行參數中的 testPayWithDiscount()。對比兩個輸出結果,setUp() 在每個方法運行前運行一次,teardown() 在每個方法運行后執行一次。后面將會詳細介紹。

TestRunner 處理兩種不同的參數

TestRunner main() 方法中,生成一個 TestRunner 實例,調用 start(args) 方法。在 start 方法中,JUnit 對輸入參數進行處理,首先檢查 -m、-v、-wait 等參數,對他們分別進行處理。如果有 -m 參數,將會根據“.”的位置,分割得到 className 和 methodName.

參數一:

首先調用 getTest(),通過 Java 反射實例化 TestSuite:

Class testClass = Class.forName(suiteClassName).asSubclass(TestCase.class);

new TestSuite(testClass)

TestSuite 構造函數中,通過調用 Class.getDeclaredMethods(),得到這個類的所有 Public 的方法,當然也包括構造函數,test 開頭和非 test 開頭的 public 方法。對所有方法進行過濾,僅僅保留 public 并且以“test”開頭的方法,本例中為 testPay() 和 testPayWithDiscount()。然后分別調用 TestSuite 的 createTest() 為每個方法生成一個實例:

theClass.getConstructor(String.class).newInstance(new Object[0]);

并且都保存在 Vector<Test> fTests 中。

參數二:

與方法一不同的的是,并不通過反射獲得相應的方法,因為參數中指定了特定的方法。直接根據輸入參數調用 TestSuite 的 createTest(),通過反射直接生成 TestCase 實例。

TestCase 實例的運行

生成 TestCase 實例后,兩種參數都將調用 TestRunner 的 doRun() 方法。下面將對第二種參數進行詳細介紹,介紹一個 TestCase 實例是怎么運行的,并且怎樣與 TestResult 和 TestListener 結合。

在 doRun() 方法中,實例化 TestResult result, 為 result 加上 Listener (new ResultPrinter()),用來監聽 Test 運行中的事件。然后運行 TestResult.Run(test)。run() 方法中調用 TestCase 的 runBare()。runBare() 會把所有的異常都拋出來,result 將接受到所有的異常。runBare() 首先會運行 setup(),接著運行 runTest(), 后 tearDown()。回頭再看前面的 output,明白了為什么 setup() 和 tearDown() 會在每個方法運行前和后運行,對于參數二,運行了兩次。

上一頁1234下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 欧美专区亚洲 | 免费的黄视频 | 1024在线视频国产在线播放 | 精品国产免费观看久久久 | 天天做人人爱夜夜爽2020 | 黄色片a | 欧美青青 | 国产人妖性一区二区 | 射黄视频| 亚洲成人在线播放 | 重口高h 全肉 文调教bl | 国产一级一片免费播放视频 | 亚洲国产成人99精品激情在线 | 国产第一页久久亚洲欧美国产 | 很黄的网站在线观看 | 日韩爽爽爽视频免费播放 | 在线18av| 超黄网站 | 日韩色视 | 最近资源中文字幕4 | 综合自拍亚洲综合图区美腿丝袜 | 免费成人午夜视频 | 在线观看成人影院 | www.久久.com| 免费一级毛片 | 人人干天天干 | 一区二区三区视频在线播放 | 夜夜澡人人爽人人喊_欧美 夜夜躁天天躁很很躁 | 黄色国产一级片 | 日韩不卡高清视频 | 日韩中文在线播放 | 黄色一级视频播放 | 69一级毛片 | 亚洲第一页在线 | 男女乱淫真视频免费一级毛片 | 国产精品国产三级国产an不卡 | 天天躁日日躁狠狠躁黑人躁 | 大香网伊人久久综合网2020 | 成人三级视频在线观看 | 亚洲综合色一区 | 亚洲黄色网址在线观看 |