可觀測性對測試的影響:QCon倫敦大會上對Amy Phillips的訪談

weixin_34253539發表於2018-03-15
\

看新聞很累?看技術新聞更累?試試下載InfoQ手機客戶端,每天上下班路上聽新聞,有趣還有料!

\
\\

可觀測性讓你完整地看到系統當前的健康狀況,可以取代某些型別的測試。對於低風險的應用程式,如果具備持續交付流程,能夠提供快速反饋,可以快速釋出變更,則可以依賴可觀測性,而不是測試。

\\

QCon 2018倫敦大會上,Moo工程部經理Amy Phillips談了測試可觀測性。InfoQ正以Q\u0026amp;A、演講、綜述、文章的形式對此次大會進行跟蹤報導。

\\

InfoQ採訪了Phillips,內容涉及測試自愈系統、可觀測性以及測試未來將怎麼發展。

\\

InfoQ:持續交付(CD)對測試有什麼影響?

\\
\

Amy Phillips:持續交付重在快速反饋,這使得自動化測試在釋出通道中得到了更廣泛的應用。雖然這不是推動變革的唯一途徑,但事實已經證明,它在鼓勵團隊設計有效的釋出流程方面發揮了極大的作用,而這個流程就涉及執行什麼測試、什麼時候執行有效。

\\

通常,使用持續交付的團隊做的測試並不少,但他們會更有意識地進行本地測試和生產測試。特性切換的使用可以幫助他們把測試從自動化釋出通道轉移到生產環境。

\\

關於持續交付,其中一個最引人注意的方面是其在開發人員中的受歡迎程度。測試是成功的持續交付不可或缺的組成部分,它使得真正的跨職能團隊能夠一起構建、測試和釋出軟體。

\
\\

InfoQ:自愈系統的測試面臨什麼挑戰?

\\
\

Phillips:測試自愈系統面臨的挑戰並不比測試其他系統多很多。我們仍然需要測試應用程式是否可以“正常執行”,但是,我們還需要小心,不要假定基礎設施在測試過程中一直保持不變。

\\

在測試或除錯時,其中一個困難是間歇性問題,我們知道這些問題會出現,但是無法識別或跟蹤。自愈系統會加重這個問題,因為它會處理導致這個缺陷的底層問題,而不需要任何人的干涉。

\\

測試人員應該對應用程式平臺有一個很好的瞭解,平臺團隊應該對正在執行的測試有一個很好的瞭解。通過協作以及使用可觀測性技術,可以減少或消除這方面的挑戰。

\
\\

InfoQ:可觀測性如何幫助我們確保系統可以正常執行?

\\
\

Phillips:測試會設法收集系統資訊,但是,鑑於可觀測性可以讓你完整地看到系統當前的健康狀況,所以,它經常會變成“它執行正常嗎”的核取方塊任務。它們一起提供了一個內容豐富許多的檢視,告訴你係統究竟正在做什麼。

\\

有一次,我測試一個Web系統,這個系統裡儲存著供應商的詳細資訊以及他們特有的受多個因素影響的購買率。這個系統是增量構建的,測試貫穿整個過程。

\\

一天,有個人注意到,其中有個供應商的購買率嚴重錯誤。在檢查日誌及重新測試計算過程後,我們得出結論,有人無意間修改了值,以防萬一,我們新增了更多的日誌。

\\

幾周之後,同樣的事情發生了,但是另一個供應商。這次,我們有足夠的日誌證明,那不是一次錯誤的編輯。事實上,那個供應商幾個月都沒編輯過了。同上次一樣,值是錯的,但我們不知道為什麼。我們新增了更多的日誌。

\\

最終,在我們新增了足夠多的日誌之後,這個問題出現了。結果證明,這是由MySQL“反常”導致從資料庫檢索出了錯誤的數值。

\\

我們的構建和測試全都在關注“這是正確的東西嗎?”當我們得到的返回是“否”的時候,我們需要很長的時間來除錯。在這種情況下,除測試之外,把注意力放在可觀測性上可以為我們提供幫助。

\
\\

InfoQ:可觀測性會取代測試嗎?

\\
\

Phillips:我認為,可觀測性已經取代了某些型別的測試。很長一段時間以來,監控已經被視為取代測試一切的合適方案。如果你知道出了什麼問題,並且具備很好的釋出通道,讓你可以快速地釋出變更,那麼對於低風險的應用程式,非常適合依賴於可觀測性,而不是測試。

\\

在構建系統時,考慮“我們的構建正確嗎?”以及“在它不正常時我們如何知道?”這樣的問題,可以提供不同的系統健康狀況視角,減少問題的出現,降低問題的影響。

\
\\

InfoQ:您預計測試未來會怎樣發展?

\\
\

Phillips:不同的系統有不同的需求,但通常,我認為,測試正在進入一個有著更多合作的空間。過去,我們習慣於測試人員和開發人員一起工作,但是現在,我們也開始看到測試人員加入Ops工程的價值。

\\

現在,任何時候,創造性地設想風險並設計有用的場景仍然是每個測試人員的關鍵技能。我希望我們可以看到更多的團隊不再把測試看成一項系統構建完成後只發生一次的核取方塊活動。

\
\\

感興趣的讀者可以在大會網站上檢視有關Amy Phillips QCon倫敦演講“測試可觀測性”的其他資訊。

\\

檢視英文原文How Observability Impacts Testing

相關文章