集成測試
集成測試用于驗證服務的外部行為。測試框架會啟動服務的一個實例,并調用服務的外部接口來執行業務邏輯。
端到端測試
端到端測試用于驗證多個服務之間的交互行為。在一個獨立的環境里啟動多個服務的實例,讓服務實例間發生交互,以便完成測試。端到端測試需要發起網絡請求,比如REST請求,然后被調用的服務返回的響應進行驗證。
用戶界面測試
用戶界面測試用于驗證整個平臺的行為,不僅會測試客戶端的邏輯,也會測試后端系統的邏輯,確??蛻舳撕秃蠖讼到y能夠正常交互。
只有把測試作為開發流程和發布管道不可或缺的組成部分,才能讓它發揮應有的作用。如果代碼有問題,就不應該把它發布出去。
金字塔模型里的每個測試層級都建立在下一個層級之上:
工程師們需要對測試抱有正確的態度,他們不僅要開發功能,也要負責編寫測試代碼,所以他們在很大程度上決定著測試的質量和效率。如果沒有認真對待測試,就無法測出很多邊界情況,又或者為了提高“覆蓋率”而走捷徑,但其實什么都沒有測到。
原文轉自:http://www.infoq.com/cn/news/2017/10/micro-service-build-test-culture