生桂勇
摘要:軟件測試是保障軟件開發質量的關鍵措施,應結合軟件特點來合理選擇測試手段。隨著軟件開發工序越加復雜化,使得自動化測試技術在軟件檢測中有重要應用。本文主要圍繞自動化測試系統的開發及實現、自動化測試系統的運行等方面展開討論,詳細分析了在Robot框架基礎上的測試系統研發及功能實現,以便為軟件措施提供有效途徑。
關鍵詞:自動化測試;Robot框架;測試用例
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2018)28-0268-03
軟件測試旨在提高產品運行質量,尤其在對軟件質量要求不斷提高的背景下,軟件測試重要性逐漸顯現出來。由于軟件開發復雜程度的增加以及項目研發周期的延長,為軟件測試帶來了較大難度,這時手工檢測已經不能適應軟件開發要求。因此,有必要加強對自動化檢測系統的建設與應用研究的重視,以便為軟件質量提供保障,可以說自動化檢測將是軟件測試行業未來必然趨勢。
1自動化測試系統的開發及實現
1.1Robot框架介紹
Robot框架指的是一種可調取關鍵字的自動化測試框架,能借助簡單的測試腳本來執行測試操作。通常將該框架連接到及信號接收測試的設計開發中,具有一定的應用價值。Robot框架主要體現出以下特點:一是使用操作簡單。可借助表格文件作用,利用統一測試用例進行軟件測試;二是重復使用效果較好。能借助已有關鍵字發展得到更高級別的關鍵字,從而提升測試系統性能;三是系統開發平臺和被測軟件相對獨立,不會對軟件運行造成影響;四是能滿足來自數據支撐的測試用例的檢測。總的來說,Robot框架屬于應用性較好的一種獨立框架,而在啟動這個框架時,則對應的測試數據文件將隨之啟動,在測試系統用例的過程中,將形成日志文件[1]。Robot框架使用性能的實現需要借助Jython或Python的作用,在進行軟件檢測操作時,要求在自動化檢測系統中安裝上述兩種程序,進而為系統運行奠定基礎條件。測試系統中的數據庫主要由兩部分構成,在借助Robot框架設計測試系統時,要合理利用各部分功能。
1.2系統總體架構
在進行自動化測試系統研發時,本文主要以Robot框架為系統開發基礎來建立自動化檢測改進系統。測試系統設計應滿足利用cNB功能執行測試行為的自動化檢測系統,要求符合以下條件:一是測試系統應面對GUI運行界面,有針對性的設計與研發,保證系統功能與界面顯示內容的一致性;二是要求系統體現出獨立性以及穩定性,以免出現由于系統運行故障而導致檢測結果與實際情況有所偏差的現象,同時需要保證系統維修操作順利開展;三是考慮到測試操作主要依靠錄制好的腳本進行,為了提高系統在不同軟件測試上的適應性,需要結合軟件特征進行腳本的修正和管理。因此,要求系統能滿足腳本編輯的需求。
對于自動化檢測系統整體架構而言,應在系統內部設置對應數據庫,使得測試腳本能存放在其中,方便對腳本信息的收集和儲存。當實施自動化測試行為時,需要包括調取關鍵詞及參數這個環節,以便為系統運行提供信息支持,促使系統能根據選取的測試用例合理開展軟件質量測試。從測試系統功能角度出發,主要包括關鍵字調取、腳本錄制及運行、日志生成等,只有在以上功能有效實現的條件下,才能保證軟件測試各環節取得良好效果。
1.3界面驅動腳本設計及實現
界面測試腳本設計質量與測試系統運行效率有緊密聯系,因此,有必要重視的界面驅動腳本的設計,是自動化系統建設階段不可或缺的環節,是確保軟件測試結果準確性的關鍵。為了實現測試腳本設計有效性,應合理選擇測試工具,以便起到驅動系統運行的作用。一般來講,需要測試腳本具有易于修改、方便調試、盡可能降低數據文件和腳本關聯性等要求。在操作界面驅動系統設計及實現方面,應充分利用界面驅動有關算法,進行驅動代碼的編寫。代碼中應體現關鍵字的調取環節,從而確定測試用例,在系統中輸入需要運行的驅動腳本信息,當信息文件導入計算機系統中后,則可根據操作界面指示實行軟件測試等相關操作。當測試腳本內包含關鍵字信息后,應在控制界面載入驅動腳本對應的測試信息,之后可對軟件質量進行檢測。
1.4關鍵字指令庫的設計及實現
對于關鍵字指令庫而言,由于關鍵字調取是實現測試系統功能的前提條件,因此需要加大對關鍵字指令庫建設的重視,通過合理選擇設計方法來建立滿足測試要求的關鍵字指令庫。測試系統已有模塊可為指令庫功能模塊設計提供條件,使得關鍵字能在功能模塊作用下正常調用[2]。要想保障系統各項功能的實現,應借助登陸主機、完善配置文件等行為來實施測試步驟,確保關鍵字數據信息儲存在數據庫中。在進行關鍵字指令庫設計時,同樣需要編寫相關代碼,并將代碼信息儲存在文件中,當執行檢測操作時,可利用已有關鍵字調用文件,將其導入測試系統中,以便驅動系統實行軟件檢測操作。總的來講,關鍵字調取對測試系統運行質量有顯著影響,為了確保系統測試效果,需要結合測試用例來確定關鍵字的選取,與測試系統功能的實現有緊密聯系。
1.5系統啟動
自動化檢測系統數一個較完整的系統,只有各模塊功能的實現還不能保障系統測試質量的提高,在用戶使用測試系統時,其內部不同功能模塊將發生一個整合運作過程,在各個模塊協調運作的前提下,實現整個系統的正常運轉,發揮其在軟件檢測中的作用,從而保障軟件檢測工作的順利完成。在該系統設計時,應將需要整合的模塊寫進一個函數中,在同一函數作用下,為各功能模塊配合運作奠定基礎,是實現系統功能的基礎條件,同時是自動化檢測系統設計階段的主要內容之一。
2自動化測試系統的運行
2.1LTE系統簡介
該系統能實現為人們網絡行為提供基礎條件的功能,在網絡系統發展過程中,主要經歷了模擬通信系統、數字通信系統以及3G通信等階段,不同通信技術在協調作用下逐漸形成先進通信技術[3]。LTE是現階段主要信息傳遞技術之一,能在結合已有系統優勢的前提下,實現系統結構的優化。本文主要針對軟件系統質量檢測展開討論,通過借助LTE網絡中的cNB功能,可為自動化檢測技術的實現提供幫助。對于cNB來講,主要由RNC以及3GNB構成,具備以下功能:一是通信資源管理功能,可做到對無線資源載荷、信號接入控制等環節的有效管理。二是網絡用戶可將數據傳輸到SGM中,進行信號發送;三是IP頭壓縮處理及數據加密,可加強對數據信息的保護。將這類網絡系統作為自動化檢測系統開發平臺,能保證在信息高效傳遞的條件下,為系統開發及功能實現提供基礎條件。并且在對LTE網絡應用需求進行分析時,可得出主要體現在性能需求、成本需求、容量需求等方面,在滿足上述需求基礎上,可進一步發揮LTE系統中cNB的功能。
2.2測試用例
為了確保自動化檢測系統的正常運行,需要在完成系統設計操作后對系統功能性展開測試。這時要求能合理選擇測試用例,本文主要從以下內容出發,來設置測試用例:一是項目背景,指的是考慮到數據傳遞過程中可能出現被破壞問題,這時需要采取加密技術來降低信息損失,即是應對cNB進行數據加密功能的設置;二是對加密通道的測試分析。當用戶端和控制面板產生的數據在同一通道中傳輸,則應保證通道內數據包成功加密;三是針對加密技術加以檢測。數據加密技術是基于傳輸通道實現的,需要在通道兩端設置加密點,并只有在密鑰作用下才能獲取數據。加密技術運用成效對自動化檢測系統運行質量有直接影響,因此,有必要將數據加密技術實施效果作為檢測用例之一。
2.3自動化測試分析
在實際進行自動化檢測時,應首先明確測試步驟。如測試人員將結合腳本結構來編制具體代碼文件,盡可能做到涉及系統測試的各方面。在按照標準測試步驟進行測試軟件性能檢測時,需要注重的是在完成檢測后,應記錄刪除信息的腳本,以便為之后的測試工作提供依據。測試用例具體自動化檢測流程為:首先開始運行測試系統,之后記錄測試腳本信息并調用有關數據庫,再次結合測試用例來編制測試代碼,進而實行測試操作并得到操作結果。
在測試文件設置方面,應明確文件由變量表格、關鍵詞表格、設置表格以及檢測用例表格等部分組成,上述構成內容分別對應不同的注釋標識。以變量表格為例,主要強到顯示關鍵字數量的作用,對這一構成來講,需要包括變量名、標量以及列表變量等注釋內容,在運行自動化檢測系統時,可將文化中數據信息導入系統中。而在數據測試設計方面,是自動化檢測設計中的主要環節之一。記錄測試腳本時將涉及導入數據、輸出數據以及驗證數據等操作,這些數據有效性主要由測試數據設計決定[4]。獨立設置數據文件主要考慮到以下原因:一是提升測試文件使用程度;二是減弱測試文件與數據文件的關聯性。通過建立單獨的數據文件,當需要修改測試參數時,只需要調整數據文件,而不影響原有腳本的使用。
2.4自動化測試實行
在完成自動化檢測系統的腳本錄制以及調試等環節后,可將測試文件中的參數信息儲存在Data文件中,并對文件進行命名,通過將這一文件加載到計算機設備中,便能對軟件系統進行運行質量的測試。測試文件運行過程中,應啟動文件中關鍵字,以便確保測試的全面性。通常情況下,測試系統需要檢測的測試用例存在對應的集合中,系統運行時,將按照設定的執行順序依次檢測各用例情況。實踐操作顯示,當實行結束測試用例操作后,系統將輸出三類文件,其中日志文件能記錄測試階段的測試信息,從而為軟件故障排查提供依據。
2.5測試結果分析
在按照上述步驟執行軟件測試操作后,可對自動化測試技術優勢有所了解。首先,從測試時間來講,一般情況下,自動化測試用例花費時間在30分鐘左后,并且有10分鐘為打造檢測環境,因此總的用例檢測時間約為20分鐘。而人為開展軟件檢測時,在忽視外界環境干擾下的用時約為60分鐘。并且在進行手工測試時,容易受到外部因素影響而降低測試效率,將一定程度增加檢測時間,而自動化檢測功能的實現主要依靠測試腳本作用,當腳本錄制完成后,將在系統內穩定執行,由此可得出,自動化檢測具有可靠性好和效率高的優勢。其次,從關鍵字調取時間和操作角度出發,當手工檢測軟件執行質量時,不僅需要等待信息反饋時間,還要求用戶結合檢測項目自行輸入測試條件。以輔助軟件Wireshark措施為例,關鍵字調取時間上,自動化檢測手段相較于手工測試而言有明顯優勢,并且操作行為能滿足測試系統運行需求。
在對自動化檢測特點進行分析時,首先,發現其具備操作流程簡化的特點,在測試腳本錄制完成后,可根據系統內部指令來重復使用,不僅簡化了測試準備工作,還提升了腳本利用率。其次,Robot這一框架具有操作簡單的特點,只需要利用關鍵字驅動作用,便能自動執行檢測用例過程,直至輸出測試報告,有助于軟件排錯環節的進行。最后,自動化測試可按照測試順序來具體分析檢測用例,做到檢測用例信息的充分掌握,進而實現檢測腳本的優化設計,在軟件測試中體現出較強的應用潛力。
3 結論
綜上所述,軟件行業目前已經取得了顯著的發展成果,軟件系統逐漸朝著大規模化發展,為了充分發揮軟件功能,需要加大對軟件的測試力度,是保證軟件質量的關鍵。本文主要是在基于Robot框架的條件下,結合軟件系統特點,具體分析了軟件檢測系統總體框架以及功能模塊等,進而為軟件測試環節提供應用效果較好的測試系統,發揮其在保障軟件質量上的積極作用。
參考文獻:
[1]李全. 基于Robot Framework的移動端自動化測試方案設計與實現[D].東華大學,2017.
[2]朱韶松. 基于Robot Framework的自動化測試系統的設計與實現[D].東南大學,2016.
[3]梁思秋. 基于Robot Framework的MVC GUI模塊自動化測試框架的設計與實現[D].東華大學,2015.
[4]劉娟娟. 基于Robot框架的軟件自動化測試技術的研究與應用[D].浙江理工大學,2013.
【通聯編輯:梁書】