微服務模式下的TDD實踐指南

2021-10-08 14:19:28 字數 1131 閱讀 7573

1.1 單元測試和tdd

1.2 實施tdd的目的

1.3 微服務中的測試2.1 基本過程:

2.2 過程說明

2.3 tdd實踐

tdd開發人員,可遵循上述開發過程,每次只關注乙個事情,經常切換三頂帽子(紅帽子、綠帽子、藍帽子),tdd基本過程如下:

對於tdd的初學者,很多人會覺得寫測試會占用較多開發時間。一方面是因為對測試元件不熟悉,使用測試元件會遇到一些障礙。另一方面是因為對編碼技巧不夠熟練,如:重構手法、快捷方式等。

為了使測試**能夠加簡潔、清晰,我們有時需要對測試**也進行重構,如:在進行介面測試時,對於同乙個介面會有多種不同的測試場景,這樣就會在不同的測試方法中重複的執行given()…when().post(…)的**,這些測試方法的主要差別在於它們構造的傳入引數不同。對於這種情況,我們可以將測試場景進行重構。讓測試方法關注輸入引數和驗證結果,讓測試場景類負責不同的介面請求,從而最大程度的降低了**重複。示例**如下:

//重構前

@test

void

should_return_user_when_register_given_correct_info()

//其他測試方法中,會重複以上** given()...when().post()........

..//重構後

@test

void

should_return_user_when_register_given_correct_info()

其他被重構的**如下:

@builder

public

class

userscenario

}

public

class

assertions

public

static consumer

assertstatus

(int code)..

....

.}

持續完善中…

微服務架構下的軟體測試實踐

隨著行業主流開發方式從傳統的整體式產品交付,向快節奏的微服務架構遷移,軟體測試人員也要相應地調整自己的測試方法和工具,才能多快好省地提高測試覆蓋率,盡早發現潛在的缺陷,在快速迭代的背景之下,確保所有微服務滿足企業的質量要求。我在跨國企業的軟體開發部門工作多年,負責乙個雲端運營系統的 devops 和...

微服務 Dubbo的最佳實踐

這樣的配置可以讓 provider 的實現者一開始就思考 provider 端的服務特點和服務質量等問題。建議在provider端配置的屬性有 timeout 方法呼叫的超時時間 retries 失敗重試次數,預設是 2 加上第一次呼叫,會呼叫 3 次 loadbalance 負載均衡演算法 有多個...

微服務理論與實踐 五 微服務之間的互動

microservice架構模式中的 開 是各個服務的內部實現,而其中的 閉 則是各個服務之間相互溝通的方式 微服務必須使用程序間通訊機制來互動。微服務架構有兩類ipc機制可選,非同步訊息機制和同步請求 響應機制。當設計服務的通訊模式時,需要考慮幾個問題 服務如何互動,每個服務如何標識api,如何公...