您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
單元測試之用JUnitPerf測試多線程并發(fā)
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2013/1/15 10:19:26 ] 推薦標(biāo)簽:

  編譯、運行該測試方法,使用Run as Application,控制臺可能輸出如下結(jié)果,有2個Error:

  …..EE

  Time: 0.053

  There were 2 errors:

  1) CompareDateTime(com.loggingselenium.JUnitPerfTestDateUtil)java.lang.RuntimeException: 解析日期時間格式出錯,期望的字符串格式為[yyyyMMdd HH:mm:ss]

  at com.loggingselenium.DateUtil.compareDateTime(DateUtil.java:18)
  at com.loggingselenium.JUnitPerfTestDateUtil.CompareDateTime(JUnitPerfTestDateUtil.java:22)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  at com.clarkware.junitperf.TestFactory.run(TestFactory.java:83)
  at com.clarkware.junitperf.ThreadedTest$TestRunner.run(ThreadedTest.java:75)
  at java.lang.Thread.run(Unknown Source)

  2) CompareDateTime(com.loggingselenium.JUnitPerfTestDateUtil)java.lang.RuntimeException: 解析日期時間格式出錯,期望的字符串格式為[yyyyMMdd HH:mm:ss]

  at com.loggingselenium.DateUtil.compareDateTime(DateUtil.java:18)
  at com.loggingselenium.JUnitPerfTestDateUtil.CompareDateTime(JUnitPerfTestDateUtil.java:22)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  at com.clarkware.junitperf.TestFactory.run(TestFactory.java:83)
  at com.clarkware.junitperf.ThreadedTest$TestRunner.run(ThreadedTest.java:75)
  at java.lang.Thread.run(Unknown Source)

  FAILURES!!!

  Tests run: 5, Failures: 0, Errors: 2

  多線程并發(fā)測試失敗,我們的比較日期時間大小的方法存在線程不安全的問題,我們需要在DateUtil中方法前加上線程同步關(guān)鍵字synchronized:


public synchronized static int compareDateTime(String dateTime1, String dateTime2) {......}


  再次運行單元測試方法,可以發(fā)現(xiàn)多線程并發(fā)下存在的問題得到了解決。

  本文轉(zhuǎn)自:http://www.cr173.com/html/18903_1.html

上一頁123下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd