自從人類步入信息時代,網絡技術和網絡應用的不斷創新和全面發展引導著人類社會不斷前進。從以太網到工業4.0,從互聯網到云計算,從物聯網到人工智能AI,各種產業化應用系統不斷推陳出新,令人耳目一新。
伴隨著產業化應用,的軟件生產也從個體軟件開發的原始階段發展到超大規模、大規模、集團式的產業化開發階段。軟件系統的功能實現也從簡單運算到今天面向業務的真實世界映射。在這個變化的過程中,隨著用戶需求的不斷精細化、復雜化,軟件系統的生產過程也要求產品化、可管理。
軟件系統的質量在一定程度是指它滿足或符合用戶使用需求的程度,同時表現軟件產品質量,軟件服務質量,軟件過程質量等諸多方面。這些方面在整個軟件生命周期(Software Life Cycle)中受到許多因素的影響,同時也影響著這些因素,比如需求,成本,人員組織,時間等。所以軟件質量問題已不僅僅是直接參與軟件開發的人員或測試人員的責任,它和整個軟件生產組織有關,并且與軟件生產組織的軟件過程有著直接的聯系。
在此前提下,國際標準化組織在經過多年的調查研究后,紛紛提出了具有普遍適用型的規范和標準,如ISO9001:2000,SEI的S/W CMM和CMMI等,在這些標準和規范中無一例外的把軟件質量管理作為軟件過程改進和優化的一個重要領域。
應用軟件質量評測及負載性能評測系統包含測試管理軟件ALM(Application Lifecycle Management)、功能測試軟件UFT (Unified Functional Testing)、性能測試軟件LR (LoadRunner)三個功能平臺。“ALM-UFT-LR”軟件評測系統的各平臺既可獨立工作,各自成軍,也可相互支持,多維度視角展現軟件系統的質量性能。
(1)Application Lifecycle Management (ALM) - 集中實施、分布式使用的專業測試項目管理平臺。
(圖一) ALM平臺
ALM可根據用戶業務功能需求和性能需求,建立測試需求,生成測試計劃,反向考察測試計劃對測試需求的覆蓋率,進行測試日程控制,以及測試執行和錯誤記錄跟蹤等功能,極大地加速測試過程,建立科學化規范化的用戶需求管理體系。
ALM能夠提供基于風險的質量管理,客觀地評估風險、優先級的需求,由此便于及時與客戶進行溝通,從而幫助可基于可量化的業務風險優化測試工作。
ALM能夠保證與手工測試的充分協作完成如:屏幕記錄器、自動完成數據注入、屏幕捕獲和注釋等功能,可以確保準確傳送手工測試結果和缺陷。又如:支持跨多個計算機和環境同時測試應用系統的客戶端界面,而無需其他測試人員即可進行創新鏡像測試,從而提高手工測試效率。最終,加速并改變執行手工測試的方式。
ALM能夠對需求、測試案例、測試腳本等進行版本控制。版本控制可以使團隊共同協作并同時管理多個版本的需求和測試資產,同時提供整個項目生命周期的更改審計歷史記錄。使用基線控制,可以在項目生命周期中的戰略點上捕獲一組需求、測試案例或測試資產,來標記特定的里程碑。必要時,可以通過比較基線來評估更改的影響并啟用資產回滾,生成專業的質量控制報告。
(2)Unified Functional Testing(UFT) - 用于檢驗應用程序是否如期運行的企業級應用軟件自動化功能測試平臺。
(圖二) UFT平臺
UFT為軟件自動化測試樹立了行業標準,能夠充分利用Subversion、Git、Jenkins、TeamCity等工具。
該平臺通過自動捕獲,檢測,和重復用戶交互的操作,能夠辨認缺陷并且確保那些跨越多個應用程序和數據庫的業務流程在初次發布就能避免出現故障,并且保持長期可靠運行。
支持API和Web服務測試,支持無界面測試
完成跨瀏覽器測試,支持對Chrome、FireFox、Safari、IE等瀏覽器平臺測試
支持SAP測試和版本控制
(3)LoadRunner(LR) - 具有規模適應性的企業級自動負載測試平臺。
(圖三)LR平臺
LR的VUG引擎
LR通過VUG引擎,生成代理或虛擬的用戶模擬業務流程和真正用戶的操作行為(例如:通過記錄諸如下訂單或者預訂等業務流程將其轉化為測試腳本),利用虛擬用戶技術,可以在Windows, UNIX 或Linux機器上同時運行成千上萬個測試,利用TurboLoad技術使用戶有能力創立與每天幾十萬名在線用戶和數以百萬計的點擊數相匹配的負載,使用戶獲得的規模系統適應性能力。
LR的實時性能監測能力,
LR的實施性能檢測能力可以幫助企業級用戶更快的確認和查找各關鍵系統可能出現的性能瓶頸問題,包括但不限于:
運行時間監控 – 虛擬用戶狀態,用戶的數據站
交易監控 – 反應時間,交易成功與否
網絡服務器資源監控 – 單位秒的點擊數,吞吐量
多操作系統資源監控 – CPU,內存,I/O等
中間件監控 – Tuxedo, Weblogic, Websphere等
數據庫服務器監控 – Oracle,SQLServer,DB2,Sybase
LR的Analysis分析能力
LR可集中收集所有在測試周期中產生的數據,幫助測試人員可以創建跨場景的圖表數據比較,增強數據分析的能力和速度。LR-Analysis可分析(包括但不限于):
百分比 – 分析在一定時間段內完成執行的交易所占百分比
負載下的性能 – 指明在場景執行中,任何方位運行虛擬用戶的數量和與之相關的交易時間
交易性能 – 在場景執行過程中每秒內完成交易平均花費的時間
交易性能概述 – 顯示場景中所有交易的最長,最短和平均時間
虛擬用戶反應交易性能 – 顯示每個虛擬用戶各自完成交易所需時間
交易分布情況 – 顯示執行各個交易占用到的時間分布狀況
LR支持廣泛的應用協議
LR支持Web及移動終端、CRM/ERP、MQ、數據庫、HTMLS、Web服務、AJAX、Flex、WebSockets、RDP、遠程仿真終端、Citrix、JAVA、.Net、SAP等,并支持Amazon EC2、Microsoft Azure、Google Compute Engine、Digital Ocean等云環境。
LR自動報告生成
LR利用內置的數學分析模式提供了高水平的問題定位能力,能幫助測試人員找出這些場景中的瓶頸所在,再輔以利用一系列復雜的圖表和文字說明來解釋問題,并可在一個時間段內將多個視圖疊加進行比較,還可以將兩次運行的結果放在一起進行對比,了解性能是否得到提高。
LR通過自動關聯分析能夠自動生成專業的企業級軟件系統的測試分析報告,可以是基于Word,HTML的,也可以是PDF、PPT、Excel、CSV、XML、BMP和JPEG等多種格式。
欲了解應用軟件質量評測系統的進一步信息,敬請或 to:support.cn。