訊息中介軟體及其測試要點

玄學醬發表於2017-07-10

中介軟體(middleware)是一種獨立的系統軟體或服務程式,分散式應用軟體藉助這種軟體在不同的技術之間共享資源,中介軟體位於客戶機伺服器的作業系統之上,管理計算資源和網路通訊。中介軟體是基礎軟體的一大類,屬於可複用軟體的範疇。中介軟體位於資料庫和 應用軟體中間,為了解決協議轉換、通訊、訊息傳遞、事務管理、記憶體管理等任務而固化的軟體,不再需要程式設計者處理這些問題,只要解決軟體的業務邏輯就行了。 中介軟體發展與研究在基礎軟體中最晚,沒有達到作業系統、資料庫管理系統那樣的成熟程度,內涵與外延目前都還不是很清晰。

  中介軟體的分類沒有官方的或者唯一的標準,但是比較流行的一種分法是:螢幕轉換及模擬中介軟體、資料庫訪問中介軟體、訊息中介軟體、交易中介軟體、應用伺服器中介軟體、安全中介軟體,還有三種中介軟體也是比較常用的,包括曾經比較流行的門戶中介軟體,和最近興起的工作流中介軟體和企業應用整合中介軟體(ESB)等。

   訊息中介軟體是中介軟體中的重要型別。訊息中介軟體利用高效可靠的訊息傳遞機制進行平臺無關的資料交流,並基於資料通訊來進行分散式系統的整合。通過提供訊息 傳遞和訊息排隊模型,它可以在分散式環境下擴充套件程式間的通訊。也就是說,訊息中介軟體的主要功能是實現訊息傳輸管理、訊息管理、佇列管理、多種協議支援、 JMS支援等,主要的訊息中介軟體產品包括:IBM  的MQ、SUN 的JMS、微軟的MSMQ以及國內的,如:東方通、協同等廠商等相應產品等。

  對於訊息中介軟體產品的測試需要根據其主要功能展開,所以測試內容包括:

  訊息傳輸管理

  測試內容包括是否支援跨平臺訊息傳輸、支援傳送訊息過程中遮蔽傳送端與接收端的網路故障、支援傳送訊息過程中遮蔽接收端的異常,如:接收端當機、系統崩潰等情況,是否支援訊息傳輸過程中的故障診斷與日誌記錄、支援訊息傳輸過程中的故障恢復、支援訊息傳輸過程中的斷點續傳功能等。

  訊息管理

   測試內容包括是否支援檢視傳送端和接收段訊息佇列中的訊息、支援傳送和接收訊息佇列中的訊息、支援接收端訊息佇列的全部刪除和條件刪除、支援傳送端訊息 佇列的全部刪除和條件刪除、支援訊息的優先順序定義,並根據優先順序完成傳送和接收的不同策略,是否支援訊息生命週期的設定,並根據訊息生命週期的設定完成消 息的生命週期管理等。

  佇列管理

  測試內容包括是否支援訊息佇列的分類,包括:本地佇列、傳送佇列、遠端佇列、系統佇列、使用者佇列等。是否支援對訊息佇列的刪除操作、支援清空訊息佇列的訊息,是否支援對佇列中訊息狀態的檢視,狀態包括:ready、standing、receiving等。

  支援多種傳輸協議

  測試內容包括是否支援IPV6協議、SSL協議、HTTP協議、HTTPS協議等。

  JMS支援

  測試內容包括是否支援點到點的訊息傳輸、支援釋出/訂閱的訊息傳輸、支援JMS傳送、接收檔案、支援JMS組訊息的傳送、支援JMS非持久訊息和持久訊息、支援訊息定義符合JMS的從0到9的優先順序路線級別等。

  在確定了以上測試要點後,就可以開始準備相關測試案例,進行測試案例的開發。在實際測試中,執行覆蓋所有測試要點的測試案例,以驗證訊息中介軟體是否很好的實現了應該具備的所有功能。








====================================分割線================================



最新內容請見作者的GitHub頁:http://qaseven.github.io/


相關文章