天天看點

分布式系統測試

一、什麼是分布式測試

    分布式測試是指通過區域網路和Internet,把分布于不同地點、獨立完成特定功能的測試計算機連接配接起來,以達到測試資源共享、分散操作、集中管理、協同工作、負載均衡、測試過程監控等目的的計算機網絡測試。

二、分布式測試系統的特點

1)網絡化。網絡化的目的是實作多個測試節點間基本的互連、互通功能,實作資源共享,是分布式測試系統的底層支撐結構。

(2)分布性。分布式測試系統不僅在地域上分布,而且在計算上也應是分布的。這對測試系統提出了一些更高的要求,如測試子系統間協同工作、整體視圖、負載均衡、具有可擴充性和高可用性等。同時,分布式測試系統對使用者具有位置透明性,測試資訊“唾手可得”。

(3)開放性。開放性包含四個方面的特征,即可移植性、可互操作性、可伸縮性、易獲得性。分布式測試系統能夠采用各種COTS(Commercial-Off-The-Shelf,商業上現成的産品和技術)軟/硬體子產品,給系統的構造帶來諸多便利。

(4)實時性。分布式測試系統本質上是一個實時系統,任務間協同工作處理各種測試資訊都必須是實時的,對過程之間的同步、操作的時限有着嚴格要求。

(5)動态性。測試系統可以動态地運作操作,支援測試過程中的所有的管理和測試活動,能靈活地根據測試實施方案,進行測試過程對象和活動的映射。

(6)處理不确定性。分布式測試環境的初始狀态是确定的、已知的,但随着系統的運作,各種動态實體在環境中變化,同時對環境産生影響,使得環境也發生某些變化,這種動态變化帶來了不确定性,分布式測試系統必須具有處理這種不确定性的能力。

(7)容錯能力強,可靠性高、安全性好。         

三、分布式測試系統關鍵技術

    (1)分布式環境

        分布式測試系統适合采用集中式的分布式政策,即,由一台中心計算機控制若幹台受控計算機的執行,整個測試過程和資源管理由中心來完成,它掌握整個分布式測試環境的狀态,進而發出控制指令。

 (2)分布式環境下的節點通信

    分布式測試環境中的活動均帶有很強的流程性,分布式測試系統相對于提供服務的分布式系統而言,适合用基于消息通信的方式來實作。

(3)測試任務排程

    分布式測試排程方法可分為靜态排程、動态排程和混合排程三類。靜态排程是指假設系統的拓撲結構和性能參數固定不變,設計排程算法時隻考慮目前系統狀況,并針對目前狀況盡量優化排程性能。動态排程則是指在測試執行過程中,根據系統的運作狀況(如執行節點加入或退出、執行節點資源使用情況等),動态地決定各個用例的執行節點和相應的執行時間。動态排程比靜态排程更加靈活,但也會帶來更多的排程開銷,有可能影響最終的排程性能。混合排程是靜态排程和動态排程二者的組合方法,一般來說,它根據測試用例和系統的特點,對部分用例采取靜态排程政策,對另一部分用例則采取動态排程政策。這三種方法各有利弊,需要測試人員根據具體測試情況來選擇使用哪種排程方法。

版權聲明:本文為CSDN部落客「weixin_34295316」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。

原文連結:https://blog.csdn.net/weixin_34295316/article/details/92462654