新四季網

自動化測試之接口數據依賴(基於雲計算組件模型的測試方法和技術研究)

2023-04-18 22:23:58 1

李建軍1,2

(1. 中國電子科技集團公司第三十二研究所,上海 200233;2. 廣西大學 計算機與電子信息學院,廣西 南寧 530004)

在分析雲計算技術特點基礎上,基於雲計算組件模型研究了雲計算產品的測試方法和技術,並在聯通雲計算綜合管理雲平臺的測試中進行應用,取得了較好的效果。

雲計算組件模型測試;雲計算;雲平臺測試

TP311.510.19358/j.issn.1674 7720.2016.22.004

李建軍. 基於雲計算組件模型的測試方法和技術研究[J].微型機與應用,2016,35(22):15-17,21.

0引言

隨著雲計算技術的不斷完善,雲計算已成為IT行業最新的發展趨勢。藉助雲計算架構下虛擬化、自動化的優勢,無論最終用戶、SaaS 提供商還是PaaS提供商都能以按需付費的形式從基礎設施服務中獲得應用所需的計算能力。

雲計算的出現給軟體開發和軟體測試帶來巨大影響,這種新的環境要求軟體測試的方法和技術也隨之變化。當前,市場上湧現了大量的雲計算產品,但作為一個新興的技術和領域,還缺乏完整的測試和評價方法,文獻[1-3]主要研究了如何基於雲計算環境開展軟體測試,本文主要基於雲計算組件模型探討雲計算產品的測試策略和測試內容。

1雲計算產品組件模型

從功能實現上進行分析,一個典型的雲計算產品的結構可以分為多個組件,如圖1所示[4]。

平臺:面向應用開發人員進行應用開發、集成和交付的環境和工具集。

展示:用戶與雲計算產品之間的人機互動接口。

集成:與外部子系統的交互接口。

彈性:應用和基礎設施的計算能力及容量規劃,強調可伸縮性。

存儲:提供高可伸縮存儲能力的外部存儲庫,可存儲結構化的和非結構化的、靜態的和易失性數據。

部署:應用的發布過程,包括開發、測試和最終部署到生產環境。

運行維護:對已投入生產環境的應用進行監控和提供支持。

計費:對佔用資源的測量、計費和支付結算。

身份認證:應用的直接使用者的信息,可以使用該信息來優化和定製用戶體驗。

2測試方法

雲計算產品的測試方法與傳統系統的測試方法和策略有很大的不同,針對雲計算產品進行軟體測試時應特別關注平臺能力、展示能力、集成能力、存儲能力、彈性能力、計費能力、部署和運行維護能力、身份認證等,雲組件測試模型如圖1所示。

2.1平臺組件測試

測試雲計算平臺組件時重點關注物理資源虛擬化能力、物理設備管理能力、平臺安全管理能力及容錯性等方面。

(1)驗證虛擬化能力首先要關注云計算平臺對計算資源(計算資源、存儲資源、網絡設備等)進行虛擬化再進行分配的能力, 包括設備添加、部署、配置和拆除等功能。

(2)驗證平臺是否具備物理設備控制功能,具體包括:①管理人員可以根據需要關閉、打開設備的服務。②在指定伺服器上創建虛擬機,創建指定伺服器上的虛擬機快照,卸載指定伺服器上的虛擬機等。③提供遠程控制。

(3)驗證平臺是否具備物理設備監控功能,包括:①支持主機自動發現功能。②在基礎設施管理層面,系統能夠對所有受控設備的運行狀態實施動態、實時的監控。③支持故障節點。對異常設備實施控制,並能人為或自動地隔離故障設備,將設備上的運行信息遷移到其他設備上,能夠正常運行。④支持告警功能。對物理伺服器的性能指標設定閾值,當接近或超過閾值時,可以對管理人員進行報警,支持簡訊、郵件發送等方式的報警信息,保證管理人員第一時間收到報警信息,對設備進行維護。

(4)測試平臺是否具備物理網絡管理能力,包括對物理網絡設備如網卡、交換機、路由器等的管理、控制和維護,並為用戶提供物理網絡拓撲圖,實時查看物理網絡狀態,支持對故障設備的隔離和恢復。驗證系統是否提供基於物理網絡的網絡隔離和寬帶控制功能,實現多租戶環境下的物理隔離,更好地保護租戶的應用和數據[5]。

(5)測試平臺的虛擬存儲管理能力,包括:①可以為存儲卷創建快照,用於快速恢復存儲卷和虛擬機。出於安全考慮,每個存儲卷都有配額設置和訪問控制,只允許有權限的用戶和虛擬機讀寫卷中的數據,默認情況下存儲卷可以被所有用戶訪問。查看是否能創建快照,在存儲發生故障時能快速恢復;查看是否為每個存儲分配不同的權限,非授權用戶訪問時被禁止[6]。②支持對關鍵數據進行加密存儲,防範非法用戶對數據的濫用;查看是否為關鍵數據加密。③測試是否支持多存儲方案,包括傳統的NAS和SAN、分布式存儲以及本地存儲[7]。用戶可根據實際需求選取其中一種存儲方案或將幾種方案混用。④測試是否支持跨物理和虛擬機訪問共享虛擬磁碟和應用數據程序數據,以擴展雲平臺的應用範圍。

(6)驗證虛擬網絡管理能力,具體包括:①虛擬網絡管理主要是針對虛擬機網絡,如對虛擬機網卡、網關、虛擬交換機等的管理和維護,在虛擬網絡拓撲視圖上查看網絡劃分情況、IP使用情況及各種虛擬設備的在線狀態,查看各業務的運行狀態。②物理、虛擬的主機能夠同時對外提供服務,必須能夠提供完整、有效、可控的網絡組網的管理、控制能力,能靈活、可靠地實現內部網絡與外網(含企業網、網際網路)間的映射和必要的安全保障。③根據用戶訪問和資源控制需要,提供比較全面的網絡管理機制,包括訪問網關、網絡隔離和帶寬控制等,從而保證安全和提高網絡資源使用均衡。④實現物理網絡和虛擬網絡之間的互通,即虛擬機可以和物理伺服器進行通信,支持在用戶在伺服器上部署關鍵應用,同時又能保證整個雲平臺業務的互通性和一致性。

雲計算的安全是指確保數據只能被授權的實體訪問,而且數據是機密的、真實的、最新的、存在的。安全性方面一般都提供授權和基於角色的訪問控制功能,其正確驗證主要通過分析雲計算產品的訪問管理架構和評估雲基礎設施中基於安全證書的RBAC實現。雲企業用戶需要綜合權衡安全性與速度、效率,而無須考慮雲計算基礎設施的基礎安全,因此雲產品應該提供一組安全服務和工具,使企業能滿足個性化需求的安全服務,測試時重點驗證以下控制點:

(1)網絡接入控制功能:對於非法佔用IP資源、內部設備非法跨網段接入等可以及時發現,保障全網的IP管理秩序和網絡接入安全;可對虛擬機MAC地址與IP位址進行強綁定,一旦其中任意一項被非法修改,則虛擬機與外界連接的網絡立刻被斷開(管理員可以通過特別工具恢復),從而保護用戶的權益不受到損害。

(2)實時監控整個網絡應用:不斷獲取設備各類指標參數,在問題發生前及時了解非正常情況,分析非法入侵、病毒、物理故障等現象。

(3)測試是否能通過設置閾值實現對網絡流量的預警,是否支持全自動防DDoS攻擊。

(4)測試審計功能是否完整有效等。

(5)平臺的容錯性方面,當大量伺服器進行同一個計算時,測試單節點故障是否影響應用的正常運行。

2.2集成組件測試

測試是否支持Xen、KVM、VMware等異構虛擬化平臺統一管理,並支持對物理機統一管理。

測試其接口管理能力,是否對外提供標準IaaS訪問接口,包括圖形化界面、命令行界面和可編程開放接口。另外,其提供的接口要求與標準開放的雲計算接口與技術相兼容。雲平臺的API支持兼容AmazonEC2、EBS、S3、LoadBalancing、CloudWatch、Elastic MapReduce等公有雲標準。

2.3部署和運行維護組件測試

部署和運行維護能力是衡量雲計算平臺可用性的一個重要方面,測試時重點考慮以下內容:

(1)是否提供虛擬機全生命周期創建、運行和刪除中各個階段的相應管理功能。主要包括虛擬機的啟動、停止、重啟、掛起、恢復、克隆、刪除、增量備份、在線熱遷移,提供基於VNC的虛機連接機制。

(2)是否支持主機選擇,對資源能夠實現動態調配。

(3)是否支持虛擬機的恢復。

(4)是否支持P2V(Physical to Virtual)能力,可以將用戶已有的應用環境整體遷移至雲平臺,保護用戶投資。

(5)支持V2V(Virtual to Virtual)能力,簡化虛擬機複製,在此基礎上可以提供虛擬機在線熱遷移能力,保證在發生故障時,用戶業務不中斷。支持熱備份、冷備份、增量備份、全備份等。遷移包括在線熱遷移和冷遷移方式。

運行維護組件,另外需要驗證其日誌管理和審計功能,測試其是否支持全面管理用戶系統訪問操作日誌,方便查詢和回溯用戶行為。審計日誌包含系統錯誤/告警事件記錄。提供INFO、Debug兩種基本運行日誌,方便管理員監控系統運行狀態、查找詳細錯誤信息和排除故障。

2.4雲計算彈性測試

雲計算彈性最直接的就是雲計算服務的可靠性,其具體體現在服務的可靠性、可使用性、可恢復性、連續性等方面。可用性通常使用正常運行時間所佔的百分比來衡量,一般通過提高單個組件的可靠性來獲得可用性,同時採用冗餘和故障遷移技術來實現容錯的目的。

彈性測試需要集合彈性評測模型來進行。服務等級協議SLA定義了雲服務類型、服務質量和服務費用,確定了消費者或企業與雲服務提供商之間所希望的基本服務水平[8]。

雲計算中比較核心的功能是資源的彈性伸縮、動態調度、租戶隔離等,所以測試時重點驗證以下方面:

(1)彈性伸縮管理。集群的伸縮類型目前定義了三種模式:橫向模式(通過增減實例數量滿足需求)、縱向模式(通過增減性能滿足需求)、動態遷移(故障情況或反應不及時的情況下通過將實例遷移到性能更好的物理機上)。各種模式下,管理員可以自由組合,形成不同的策略類別,以滿足用戶不同的應用需求。

(2)負載均衡策略。提供多種負載均衡策略,如CPU佔用最少策略、內存使用最少策略、訪問量最少策略等,用戶可以根據應用選擇不同的策略實施負載均衡,也可以多種策略混用。

(3)基於工作流的服務流程定義能力。基於工作流引擎,提供內置的資源申請流程、事件管理流程、問題管理流程和變更管理流程的運維流程支持。

2.5身份認證

測試平臺是否提供多種用戶接入控制,如用戶/密碼、Ukey認證、手機驗證等多種方式,防止非法用戶對雲平臺資源濫用。

驗證是否提供用戶管理能力,包括提供基於角色的平臺用戶管理功能。包括用戶登錄、用戶查詢、新建用戶、修改用戶、刪除用戶及角色管理。

系統是否能夠提供軟體資源模板、硬體資源模板、網絡、存儲空間等對象權限分配機制,控制用戶可創建虛擬機的類型和配置。授權的操作包括隱藏、創建、更新和刪除。用戶的功能界面顯示根據其角色所決定,不同的用戶在前端顯示的操作菜單與其具備的權限一樣。頁面中的功能按鈕根據模塊中所包含的功能來定義,通過模板及角色所擁有的權限進行控制。

2.6雲計算展示測試

雲計算所交付的功能需要提供一個人機互動界面(用於接收用戶輸入和顯示系統輸出內容),基於瀏覽器界面的部署和系統升級的便捷性,當前主流雲計算應用的展示層一般都提供了瀏覽器界面,測試時重點驗證是否提供統一的門戶功能,集成IaaS平臺和PaaS平臺的監控和管理系統。提供集成式的Dashboard功能,對IaaS和PaaS平臺重要的KPI指標進行實時的監控和展示,包括:提供部署服務相關的報表,用於統計和報告物理機、虛擬機數目和部署實施情況;提供監控和管理服務報表,統計和報告伺服器和虛擬機的資源利用率情況;提供流程服務報表,統計和報告服務流程執行的相關情況。

2.7計費組件測試

為了合理地對雲計算服務使用方收取費用,需要對用戶使用情況進行度量,比如以單位度量、應用程式事件、用戶登錄、應用的正常運行時間、帶寬利用率、應用響應時間、監視警報和計費統計等數據為基礎。

管理員可定製虛擬機實例、網絡、存儲等資源服務的使用費用規則,包括計費方式、費率等,並可按照用戶所選擇的服務等級協議給予相應折扣。對於用戶的繳費狀態進行全局監控,可根據費用設定相應的啟停規則對用戶進行管理。如果在設定的規則內,用戶欠費狀態一直未得到更新,則可自動停止用戶對資源的使用權限,必要時可註銷帳戶等。

驗證計費組件記錄用戶虛擬機使用情況,包括使用時間、使用流量和操作序列等,支持最終用戶實時查詢自己資源使用情況,防止需求超過配額,影響對業務的有效支撐;查看能否進行資源統計分析,以圖表的方式展示給用戶,並且支持報表生成。

3結束語

本文從典型的雲計算產品組件模型入手,分析並提出了雲計算產品各功能組件的測試方法和要點,對於雲計算平臺相關產品的測試和評估具有一定的參考價值。本研究成果已被用於中國聯通的的綜合管理雲平臺測試工作中,取得了較好的效果。下一階段的研究方向為如何基於雲計算組件模型的測試結果數據對雲平臺進行評估。

參考文獻

[1] 殷琦,杜明,劉曉強,等.基於雲環境的分布式軟體接口自動化測試[J]. 計算機測量與控制,2015,23(7):2247-2249.

[2] 肖明清,楊召,薛輝輝,等.雲計算及其在測試領域的應用探索[J]. 空軍工程大學學報(自然科學版),2015,16(1):50-54.

[3] 周顯明,李建軍,王莉華,等.基於雲計算的測試公共服務平臺設計技術[J]. 微型機及應用, 2015,34(4):14-16.

[4] RHOTON J,HAUKIOJA R.雲計算架構解決方案設計手冊[M]. 趙龍剛,金振林,譯.北京:機械工業出版社,2012.

[5] 林闖,蘇文博,孟坤,等.雲計算安全:架構、機制與模型評價[J]. 計算機學報, 2013,36(9):1765-1781.

[6] 馮朝勝,秦志光,袁丁,等.雲數據安全存儲技術[J]. 計算機學報, 2015,38(1):150-157.

[7] 袁玉宇,劉川意,郭松柳.雲計算時代的數據中心[M].北京:電子工業出版社, 2012.

[8] CHANG W Y, HOSAME A A,SANFORD J.轉型中的企業雲服務[M].朱愛紅,李連,李瑛,等,譯.北京:國防工業出版社,2012.

,
同类文章
葬禮的夢想

葬禮的夢想

夢見葬禮,我得到了這個夢想,五個要素的五個要素,水火只好,主要名字在外面,職業生涯良好,一切都應該對待他人治療誠意,由於小,吉利的冬天夢想,秋天的夢是不吉利的
找到手機是什麼意思?

找到手機是什麼意思?

找到手機是什麼意思?五次選舉的五個要素是兩名士兵的跡象。與他溝通很好。這是非常財富,它擅長運作,職業是仙人的標誌。單身男人有這個夢想,主要生活可以有人幫忙
我不怎麼想?

我不怎麼想?

我做了什麼意味著看到米飯烹飪?我得到了這個夢想,五線的主要土壤,但是Tu Ke水是錢的跡象,職業生涯更加真誠。他真誠地誠實。這是豐富的,這是夏瑞的巨星
夢想你的意思是什麼?

夢想你的意思是什麼?

你是什​​麼意思夢想的夢想?夢想,主要木材的五個要素,水的跡象,主營業務,主營業務,案子應該抓住魅力,不能疏忽,春天夢想的吉利夢想夏天的夢想不幸。詢問學者夢想
拯救夢想

拯救夢想

拯救夢想什麼意思?你夢想著拯救人嗎?拯救人們的夢想有一個現實,也有夢想的主觀想像力,請參閱週宮官方網站拯救人民夢想的詳細解釋。夢想著敵人被拯救出來
2022愛方向和生日是在[質量個性]中

2022愛方向和生日是在[質量個性]中

[救生員]有人說,在出生88天之前,胎兒已經知道哪天的出生,如何有優質的個性,將走在什麼樣的愛情之旅,將與生活生活有什么生活。今天
夢想切割剪裁

夢想切割剪裁

夢想切割剪裁什麼意思?你夢想切你的手是好的嗎?夢想切割手工切割手有一個真正的影響和反應,也有夢想的主觀想像力。請參閱官方網站夢想的細節,以削減手
夢想著親人死了

夢想著親人死了

夢想著親人死了什麼意思?你夢想夢想你的親人死嗎?夢想有一個現實的影響和反應,還有夢想的主觀想像力,請參閱夢想世界夢想死亡的親屬的詳細解釋
夢想搶劫

夢想搶劫

夢想搶劫什麼意思?你夢想搶劫嗎?夢想著搶劫有一個現實的影響和反應,也有夢想的主觀想像力,請參閱週恭吉夢官方網站的詳細解釋。夢想搶劫
夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂什麼意思?你夢想缺乏異常藥物嗎?夢想缺乏現實世界的影響和現實,還有夢想的主觀想像,請看官方網站的夢想組織缺乏異常藥物。我覺得有些東西缺失了