免费爱碰视频在线观看,九九精品国产屋,欧美亚洲尤物久久精品,1024在线观看视频亚洲

      Junit4入門之如何編寫好的測試類

      Junit4入門之如何編寫好的測試類

      Junit4入門之如何編寫好的測試

      本節(jié)可以選擇性瀏覽,跳過也不影響單元測試的學習使用。

      在使用junit前, 我們需要了解一些規(guī)則,如何去寫好一個測試類。

      之所以放在junit前說明,是因為單元測試不一定只能用junit去做,就算我們什么軟件依賴都不用,也是可以做的,就是會麻煩點,不要下意識的覺得單元測試=Junit,應該是單元測試 > Junit。

      市面上單元測試并不是只有junit一家的,還有許多其他的框架模塊,只是相比之下它們沒有junit普及。而且有些公司還有內(nèi)部的單元測試框架,也未必是基于junit開發(fā)的。

      甚至必要的時候,哪怕不用Juint,也要進行單元測試,這就只能用Java原生的斷言語句等等了。

      1)java中斷言(assert)的使用

      一開始我以為斷言是junit中的特色,其實不然,斷言是一個編程術(shù)語,常用于單元測試中,甚至它都并不只存在于java。

      而java中的斷言,是在JDK1.4后開始使用的,關(guān)鍵字是assert,它主要是用在代碼開發(fā)和測試時期,用于對某些數(shù)據(jù)進行預期判斷,如果結(jié)果不符合自己的預期,程序就警告或退出。

      它的語法大概如下:

      語法①:assert condition

      condition代表一個布爾類型的條件表達式,如果為真,就繼續(xù)正常運行,如果為假,則異常退出

      public static void main(String[] args) { double x = Math.abs(-123.45); assert x >= 0; System.out.println(x);}

      這里我斷言x>=0,如果計算結(jié)果符合我的預期則無事發(fā)生,如果計算結(jié)果x小于0,則不符合我的預期,斷言失敗,拋出AssertionError。

      語法②:assert condition : message

      condition和上面是一樣的,冒號后的message通常用于斷言失敗后的異常提示信息,它就是個傳入到AssertionError構(gòu)造參數(shù)里的值,用于我們自定義錯誤詳情的,這里就不放代碼了,大家可以自己試試。

      關(guān)于使用斷言還有個最重要的規(guī)則:程序的任何行為都不能依賴斷言,千萬不要把斷言當成程序中的邏輯來使用,也就是你的代碼即便刪除里面所有的斷言語句,它的邏輯和之前也是不能有任何變化的。因為它只是用于測試和開發(fā)的,甚至JVM默認都是關(guān)閉斷言使用的,如果沒有開啟斷言,程序會自動忽略所有斷言語句,仿佛它們并不存在,要執(zhí)行assert語句,必須給Java虛擬機傳遞-enableassertions(可簡寫為**-ea**)參數(shù)啟用斷言,也可以使用-disenableassertion(簡寫為**-da)參數(shù)關(guān)閉斷言**(默認就是關(guān)閉的)。

      最后,雖然java有提供斷言,但我們實際開發(fā)中卻很少使用它,因為如果要使用它去測試,還不如直接用Junit框架去寫單元測試的代碼,Junit也提供了斷言的語句。

      雖然我們用不上java里的斷言,但是也要有所了解,并且大部分的斷言其實邏輯都是差不多的。

      鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
      用戶投稿
      上一篇 2022年6月12日 14:29
      下一篇 2022年6月12日 14:29

      相關(guān)推薦

      • 短視頻策劃內(nèi)容的3個要點(短視頻策劃內(nèi)容怎么做)

        短視頻在制作時,內(nèi)容框架非常重要。如果直奔主題,然后結(jié)束,聚卓告訴你,這樣的短視頻已經(jīng)過時了。現(xiàn)在的短視頻需要框架的,但不是任何框架,它需要一種易于理解和消化的框架。而且,現(xiàn)在大多…

        2022年11月27日
      • 存儲過程語法(sql server存儲過程語法)

        今天小編給各位分享存儲過程語法的知識,其中也會對sql server存儲過程語法進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧! oracle存儲過程基本語法…

        2022年11月26日
      • 抖音帶貨怎么做入門(抖音帶貨怎么做入門教學)

        相信很多小伙伴都有注意到,現(xiàn)在抖音已經(jīng)成為大家最常光顧的一個平臺了,作為一個日活破億的流量池,如今抖音上的用戶數(shù)量極大。因此,現(xiàn)在在抖音上帶貨、賣貨的人也是越來越多了,那么想在抖音…

        2022年11月25日
      • 銳龍97900x參數(shù)規(guī)格跑分評測 銳龍97900x屬于什么檔次

        銳龍9 7900X是銳龍7000系列處理器中性能頂尖的型號之一,它采用了這一代標配的zen4架構(gòu)和5nm制程工藝,那么它具體的參數(shù)跑分如何,在電腦上世紀發(fā)揮怎么樣呢,下面就來看看銳…

        2022年11月24日
      • 今天出入濟南最新通知(出入濟南政策最新消息今天)

        近日濟南疫情感染人數(shù)也在不斷增加,劃分的高風險區(qū)也是越來越多了。據(jù)最新統(tǒng)計,截止2022年11月24日11時,濟南共有低風險地區(qū)12處,高風險地區(qū)338處。很多朋友都擔心現(xiàn)在濟南無…

        2022年11月24日
      • vivox90pro配置參數(shù)跑分詳情 vivox90pro是什么屏幕

        vivox90pro參數(shù)配置詳情怎么樣?vivo手機在昨晚舉行了X90系列發(fā)布會,有普通款、pro款以及pro+款三個版本,那么vivox90pro具體配置怎么樣呢?下面就讓小編為…

        2022年11月23日
      • vivox90參數(shù)配置詳情 vivox90處理器功耗跑分介紹

        vivox90參數(shù)配置詳情怎么樣?vivo手機在昨晚舉行了X90系列發(fā)布會,有普通款、pro款以及pro+款三個版本,那么vivox90具體配置怎么樣呢?下面就讓小編為大家介紹一下…

        2022年11月23日
      • 微信健康碼怎么注銷重新申請健康碼 怎么更換綁定人

        在疫情常態(tài)化的管理之下,出行都需要健康碼,那么如果因為種種原因注銷了健康碼怎么辦呢?這種情況下是否還可以再申請健康碼呢?下面一起來看看了解一下吧! 微信健康碼注銷了還能申請嗎 健康…

        2022年11月22日
      • 寬帶測速軟件(手機寬帶測速軟件)

        中國聯(lián)通用戶可登錄中國聯(lián)通網(wǎng)上營業(yè)廳,選擇寬帶寬帶服務寬帶測速,按頁面指導進行測速,測速時建議您直連電腦,如測速結(jié)果無法達到簽約速率,您可通過中國聯(lián)通APP,“服務報障在線報障”進…

        2022年11月22日
      • 馬斯克凌晨一點半曬“代碼審查”現(xiàn)場,編排他的段子比瘋狂星期四還多

        夢晨 Pine 發(fā)自 凹非寺 量子位 | 公眾號 QbitAI 每一個真正會寫代碼的人,請在下午2點到總部10層報到。 每一個真正會寫代碼的人,請在下午2點到總部10層報到。 馬斯…

        2022年11月21日

      聯(lián)系我們

      聯(lián)系郵箱:admin#wlmqw.com
      工作時間:周一至周五,10:30-18:30,節(jié)假日休息