[發明專利]一種軟件自動化測試系統及方法有效
申請號: | 201110362976.X | 申請日: | 2011-11-16 |
公開(公告)號: | CN102521120A | 公開(公告)日: | 2012-06-27 |
發明(設計)人: | 周海旭 | 申請(專利權)人: | 中國民航信息網絡股份有限公司 |
主分類號: | G06F11/36 | 分類號: | G06F11/36 |
代理公司: | 北京瑞思知識產權代理事務所(普通合伙) 11341 | 代理人: | 李濤 |
地址: | 100010 北*** | 國省代碼: | 北京;11 |
權利要求書: | 查看更多 | 說明書: | 查看更多 |
摘要: | |||
搜索關鍵詞: | 一種 軟件 自動化 測試 系統 方法 | ||
技術領域
本發明涉及一種軟件自動化測試系統及方法,具體地說,涉及基于圖形視圖的軟件自動化測試系統及方法,通過該系統或方法,用戶可以很輕松地完成絕大多數類型軟件的自動化功能測試。
背景技術
傳統的軟件自動化測試工具或框架都是以純代碼的形式實現業務流程控制,這導致了以下幾個問題:開發和維護測試腳本的成本很高;實施自動化測試對工程師的編碼能力有著很苛刻的要求;只能采用函數封裝或類封裝的方法實現腳本分層,增加了腳本的復雜程度。正因為這些原因,許多項目團隊對軟件自動化測試望而卻步。使用本發明提出的基于圖形視圖的軟件自動化測試框架平臺及方法,用戶可以將每一個步驟封裝在一個獨立的、基于圖形視圖的業務節點中,這些節點可以在測試場景界面中隨意拖動,通過添加有向連線進行連接,從而構建出一個完整的業務流程。業務節點可以在當前場景或不同場景中隨意復制粘貼,只要簡單修改連線順序就可以構建一個新的業務流程。這種業務流程構建方式就像繪制流程圖一樣直觀和方便。
另外,參數化是自動化測試中一個非常重要的環節。使用傳統工具實現這一工作往往十分繁瑣,需要設置很多選項,并使腳本變得復雜和難以維護。使用本發明提出的基于圖形視圖的軟件自動化測試框架平臺及方法,參數化可以簡單地通過拖動鼠標,繪制一個循環體的方式實現(循環體的覆蓋范圍就是參數化的作用范圍)。接下來只要在循環體對應的數據表格中填入參數名稱和數值,參數化就完成了。
最后,傳統的軟件自動化測試工具一般根據對象的句柄等屬性值來進行對象識別,而且對于不同的對象類型,往往需要不同的插件支持。對于一些采用了非標準控件的被測程序,傳統工具就顯得力不從心了。而在本發明提出的基于圖形視圖的軟件自動化測試框架平臺及方法中,對象識別是采用先進的計算機視覺技術來完成的,這不僅使得自動化測試腳本的開發和維護難度大大降低,還使得傳統自動化測試方法中讓人頭痛的跨應用對象識別、非標準對象識別、結果捕獲等問題得以迎刃而解。
發明內容
本發明的軟件自動化測試系統包括:腳本編輯模塊、場景組織模塊、參數化模塊、調試和運行模塊、測試報告輸出模塊。
所述腳本編輯模塊提供一個標準的文本編輯界面,借此可快捷輸入自動化測試常用函數;腳本編輯模塊還允許用戶使用復制粘貼或拖放的方式在腳本中加入圖片;另外,通過腳本編輯模塊還可以快速截圖,使得腳本中圖像片段的獲取、存儲和處理更加方便。
場景組織模塊提供一個用于搭建測試場景的圖形視圖界面,借此可以創建多種圖形元素,并且可以拖動、復制、剪切、粘貼、刪除該圖形元素,還可以將多個圖形元素用有向連線連接起來,從而構成一個完整的測試過程。所述場景組織模塊的核心父類是Qt(一種跨平臺的C++圖形用戶界面庫)中用于組織二維圖元的QGraphicsScene類(用于組織二維圖元的類)。
參數化模塊提供參數表格編輯界面,借此可以進行參數信息導入、導出、循環次數設定、參數表格規模設定。所述參數化模塊中表達參數表格的核心父類是Qt中QTextTable類(用于表達參數表格的類)。
調試和運行模塊能夠整合處理場景中的腳本信息,生成Python(一種面向對象、直譯式計算機程序設計語言)腳本文件和圖片文件,并調用外部接口運行腳本。
測試報告輸出模塊提供輸出測試結果的專用函數,并依據用戶的需要生成HTML(Hypertext?Markup?Language,即超文本標記語言,是用于描述網頁文檔的一種標記語言)格式的測試報告文件和文本格式的測試腳本運行日志文件。所述測試報告輸出模塊具有維護框架平臺的日志文件的功能。
根據本發明的軟件自動化測試系統,其基于圖形視圖的軟件自動化測試方法包括如下步驟:
步驟1,場景組織模塊進行業務流分解;
步驟2,腳本編輯模塊開發業務節點;
步驟3,場景組織模塊構建業務流;
步驟4,對腳本進行必要的參數化(由參數化模塊、調試和運行模塊完成);
步驟5,調試和運行模塊調試運行業務流;
步驟6,測試報告輸出模塊輸出測試報告。
以上步驟與各模塊的對應關系如圖14所示。
在所述步驟1中,為了提高腳本的可復用性,或是為了實現協作式開發,首先通過場景組織模塊,把一個業務流程分解為N個步驟,每個步驟用一個業務節點來封裝和實現;分解的策略和顆粒度完全由用戶根據實際需要決定。
在所述步驟2中,完成業務流程分解后,在測試場景中加入業務節點,在腳本編輯模塊提供的腳本編輯界面上開發可視化測試腳本。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國民航信息網絡股份有限公司,未經中國民航信息網絡股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110362976.X/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:基于硬件虛擬化的密碼保護系統
- 下一篇:一種不間斷固晶機進料系統