WireMock與契約測試學習筆記:磕磕絆絆mock測試初體驗

環境

MacBook pro
Intellij IDEA 2019.2
java 8

前言

我負責的一個項目呢,契約測試曾經調通過一次,
但是最近CI報了mockTest任務執行異常。。。

自此,開始了我的兩天磕磕碰碰的旅程。
可以說我對WireMock是一點知識儲備都沒有,這兩天就是參照公司的其他項目各種對比,然後不斷調試,現在想想真是浪費了很多時間,因爲當知道原因後,真的菜啊~

錯誤

當時我一直卡在如下的錯誤中:
在這裏插入圖片描述

上面的錯誤提示:
左邊提示是最接近mock要求的接口。(最符合請求要求的接口)
右邊執行的接口測試。

進一步的錯誤信息是:
在這裏插入圖片描述
也就是報了一個請求404錯誤。

我當時一直很納悶,爲什麼會找不到請求;一開始我以爲是上圖中左邊那個接口,所以我還把那個接口的契約測試刪除了。

在這裏插入圖片描述
上圖的情況就是:

contract包下的測試任務執行正常;
mock包下的測試任務執行異常;

我執行測試任務都是單個執行的。

說明下:

mock test 只是把 contract test 拷貝過去,執行stub
也就是 stub 沒有這個接口

雖然知道了stub裏面沒有這個接口,但是怎麼更新stub呢?
問了很多同事,都沒有給出有效的解決辦法;

公司裏有大佬,但是人家很久沒弄契約測試或Mock測試了。
他也忘了怎麼去更新。

解決辦法

思路:stub沒有這個接口

關鍵怎麼更新stub呢?

在這裏插入圖片描述

更新stub
執行mockTest的任務,可以在Intellij IDEA中雙擊執行。
也可以在命令行中執行:

./gradlew :api:mockTest

之後執行結果:
在這裏插入圖片描述

總結

公司的mock測試,是將契約測試進行拷貝後在到mock環境執行的。

自己對mock測試很多的不懂呀~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章