接口集成測試類的總結

一開始由於知道咱們組有2個哥們都作過這個工做,因此我第一反應就是讓別人操做一波我看看,而後的話,我就能夠偷懶不用仔細看測代碼覆蓋率究竟是怎麼作,能夠省掉自我學習的過程。而後尷尬就出來了,測出來的結果很詭異,我沒看到代碼覆蓋率,同事一樣的操做每次都看到了代碼覆蓋率。而後我第一反應就是這個測覆蓋率的不靠譜,即便是euraka的緣由,也不應我運行幾回都走不到我本地的機器吧,並且看同事測的結果,我感受結果也不對。後來找了老大幫忙看。而後尷尬的發現,我本地看不到代碼覆蓋率就是由於沒有走我本地對的代碼,因此出來的覆蓋率不對,可是關了開發環境的項目,跑到本地以後,覆蓋率仍然不對,方法和行數都跟我理解的不同,尤爲是方法。後來我就沒管了,接着去提升覆蓋率了。最後老大跟我解釋了爲何方法和行數跟我想的不同。ide

這件事我4個須要學習和反思的地方。學習

第一,當沒有走我本地代碼時,config的覆蓋率是100%,我沒去想爲何,老大問個人時候,我看了一眼,不知道呀,老大說是由於@Configuration的註解。對本身無語中。。。我既沒有更深一層思考這些有覆蓋率的緣由,也忘了這麼基礎的東西。因此我複習了相關的筆記,具體的筆記在後面會貼出來部分,由於還沒複習完,因此新的筆記還沒整理完。idea

第二,若是想測本身的項目,而且不停掉開發環境的服務,其實能夠本身寫個euraka的demo,而後讓本地的項目註冊到這個euraka上面就行了,這個是我沒有想過的,仍是老大提了句,我試了下,確實能夠,這明顯比停了開發環境的服務更優。開發

第三,知道了爲何覆蓋率的時候,實際方法會跟我想的不同。文檔

第四,學到了作事情的態度,好比說我知道覆蓋率跟我想要的效果不同,可是我只是表達了個人疑惑,我並無進一步去找緣由,爲何不同,並且我在老大說這種測法沒問題以後,我就沒想過去查這個問題的緣由了。可是,一樣一件事情,老大不只看了個人作法,告訴我了這樣測沒有問題,還認真的聽了個人疑惑,去幫我找問題的緣由,還特地跟我講爲何,給我演示效果,作事情的態度造成了鮮明的對比。這一點是我要好好學習的。io

講了這麼一堆的廢話,我先把覆蓋率這個具體的現象和老大給我分析的結果展現一下,關於Spring Boot的筆記,我下次在寫吧。基礎

這是沒有訪問個人機器的時候,咱們以SmsHistoryService爲例,這個時候method顯示的是4,line顯示的是16行。百度

咱們先看看方法:方法

這樣看上去,這個類明明只有3個方法,怎麼會是4個呢?im

我當時想多是構造方法,但是不對呀,看看SmsHistoryRequestService,method顯示的是0/1,實際這個類也是1個方法,也就是說,多出來的絕對不是構造方法。

在看行數,

我就是去掉各類大括號和空行,剩下的也不是16行呀。那idea算覆蓋率究竟是怎麼計算的方法和行數呢?

其實百度過一波,不知道是姿式不對仍是咋地,沒找到相關這個的解釋,後來仍是老大給我詳細分析的:

左鍵點擊左邊這種紅色或者綠色的豎條,出現這個,

選第四個圖標,出現如下的文檔:

從這個文檔裏面,能夠看到覆蓋率時對行數的計算和爲何會有4個方法,

有4個方法是由於匿名內部類的緣由。行數的計算,什麼樣的會計算一行,都有LINENUMBER標記。

相關文章
相關標籤/搜索