Junit源碼解析總結(jié)
作者:
網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:
[ 2016/3/10 13:58:30 ] 推薦標(biāo)簽:
軟件測試 單元測試
以下是控制臺輸出:
###########開始迭代運(yùn)行整套測試,互相獨(dú)立###########
第一步:框架開始打印日志====
~~~~~~~~~~~~~~~~~~~~~~~
第二步:框架開始運(yùn)行測試====
這里是自己定義的setUp()
框架開始執(zhí)行測試,執(zhí)行的方法是-->public void org.linkinpark.commons.textui.LinkinTest.testLinkin4Normal()
======>開始執(zhí)行被測試代碼====
林肯:這里是自己的被測試的正確代碼
======>結(jié)束執(zhí)行被測試代碼====
框架結(jié)束執(zhí)行測試,執(zhí)行的方法是-->public void org.linkinpark.commons.textui.LinkinTest.testLinkin4Normal()
這里是自己定義的tearDown()
第三步:框架結(jié)束運(yùn)行測試====
~~~~~~~~~~~~~~~~~~~~~~~
###########開始迭代運(yùn)行整套測試,互相獨(dú)立###########
第一步:框架開始打印日志====
~~~~~~~~~~~~~~~~~~~~~~~
第二步:框架開始運(yùn)行測試====
這里是自己定義的setUp()
框架開始執(zhí)行測試,執(zhí)行的方法是-->public void org.linkinpark.commons.textui.LinkinTest.testLinkin8Error()
======>開始執(zhí)行被測試代碼====
林肯:這里是自己的被測試的錯(cuò)誤代碼
======>結(jié)束執(zhí)行被測試代碼====
這里是自己定義的tearDown()
第三步:框架結(jié)束運(yùn)行測試====
~~~~~~~~~~~~~~~~~~~~~~~
KAO,有報(bào)錯(cuò)啦。!
###########開始迭代運(yùn)行整套測試,互相獨(dú)立###########
第一步:框架開始打印日志====
~~~~~~~~~~~~~~~~~~~~~~~
第二步:框架開始運(yùn)行測試====
====框架執(zhí)行默認(rèn)的setUp====
框架開始執(zhí)行測試,執(zhí)行的方法是-->public void org.linkinpark.commons.textui.LinkinTest1.testLinkin()
框架結(jié)束執(zhí)行測試,執(zhí)行的方法是-->public void org.linkinpark.commons.textui.LinkinTest1.testLinkin()
====框架執(zhí)行默認(rèn)的tearDown====
第三步:框架結(jié)束運(yùn)行測試====
~~~~~~~~~~~~~~~~~~~~~~~
第四步:框架開始統(tǒng)計(jì)時(shí)間====
耗時(shí):0.024秒
遺憾:!一共有1個(gè)錯(cuò)誤:
1) testLinkin8Error(org.linkinpark.commons.textui.LinkinTest)org.linkinpark.junit.ComparisonFailure: 期望是:<[這里是我期望的錯(cuò)誤邏輯輸出]> 結(jié)果卻是:<[林肯:這里是自己的被測試的錯(cuò)誤代碼]>
at org.linkinpark.junit.Assert.assertEquals(Assert.java:104)
at org.linkinpark.junit.Assert.assertEquals(Assert.java:135)
at org.linkinpark.commons.textui.LinkinTest.testLinkin8Error(LinkinTest.java:42)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at org.linkinpark.commons.framework.TestCase.runTest(TestCase.java:117)
at org.linkinpark.commons.framework.TestCase.runBare(TestCase.java:53)
at org.linkinpark.commons.framework.TestResult$1.protect(TestResult.java:251)
at org.linkinpark.commons.framework.TestResult.runProtected(TestResult.java:154)
at org.linkinpark.commons.framework.TestResult.run(TestResult.java:254)
at org.linkinpark.commons.framework.TestCase.run(TestCase.java:42)
at org.linkinpark.commons.framework.TestSuite.runTest(TestSuite.java:322)
at org.linkinpark.commons.framework.TestSuite.run(TestSuite.java:316)
at org.linkinpark.commons.framework.TestSuite.runTest(TestSuite.java:322)
at org.linkinpark.commons.framework.TestSuite.run(TestSuite.java:316)
at org.linkinpark.commons.textui.TestRunner.doRun(TestRunner.java:113)
at org.linkinpark.commons.textui.TestRunner.doRun(TestRunner.java:98)
at org.linkinpark.commons.textui.TestRunner.run(TestRunner.java:58)
at org.linkinpark.commons.textui.LinkinTestAll.main(LinkinTestAll.java:18)
第五步:框架開始統(tǒng)計(jì)結(jié)果====
結(jié)果:AU,出錯(cuò)啦!
Tests run: 3, Failures: 0, Errors: 1
第六步:框架結(jié)束整個(gè)測試====
OK,junit源碼解析先整理到這里吧。接下來,我會整理junit4中的一些高級特性,之后再整理下junit中用的一些設(shè)計(jì)模式。