[英]Integration testing frameworks for testing a distributed system?
我有一個分布式系統,其組件分布在多個盒子中。 他們使用tcp或多播互相交談。 每個組件互相交換消息 - 這些基本上是被序列化的數據結構。
我們有哪些集成測試框架來測試這些系統? 我熟悉ruby所以基於ruby的東西肯定會有所幫助。
我想有不同的方法。 我盡可能地避免集成測試,但在某些時候需要使用。 這只是我要做的一個建議:
我個人認為在測試方法中將對象從一個分布式模塊調用到另一個分布式模塊,這不是一個好習慣。 是的,這將是一個集成測試,但我認為它非常容易可靠。
始終牢記測試金字塔,請記住集成測試和端到端測試可能非常昂貴。 所以明智地選擇何時使用它們:
我來自Java世界,以下是一些我認為也與該主題相關的額外信息,可能對您有意義:
希望你覺得它有用。
你可以結賬Zopkio: https : //github.com/linkedin/Zopkio 。 它是分布式系統功能和性能測試的開源框架。
您可以使用STAF / STAX,它具有良好的功能/服務,可用於分布式測試場景,如Client-Server,SAN等。此外,還有一個名為Twister的框架由Luxoft提供。 這個也很精彩。
我將用我用Java編寫的分布式系統來解決我們的問題。 我們有多個linux守護進程,它們實際上是圍繞java程序的包裝器,它們主要通過數據庫相互通信。 所以他們不會來回發送序列化的消息。 我們使用dbunit和spring-test進行集成測試。 使用dbunit,您基本上可以加載數據,運行受測系統(SUT),然后驗證數據庫是否處於正確狀態。 spring-test使基於spring的應用程序可以輕松地在測試時加載應用程序上下文。
如果您沒有基於Java的應用程序,那么這可能沒那么有用。 框架選擇在很大程度上取決於您的技術選擇和架構。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.