新四季網

一種基於資料庫操作的自動化測試方法

2023-05-12 17:50:26 4

專利名稱:一種基於資料庫操作的自動化測試方法
技術領域:
本發明涉及基於資料庫操作的測試技術,特別涉及一種基於資料庫操作的自動化測試方法。
背景技術:
為了滿足客戶對通信業務或者其他具有資料庫的計算機業務的豐富性以及多樣性的要求,業務提供商通常採用數據配置的方法,讓同一個業務通過不同的數據配置實現不同的功能。在對這類業務進行測試時,需要頻繁地操作和修改該業務資料庫中存儲的數據以測試業務不同的功能流程,在測試業務不同的功能流程過程中,還需要檢查功能流程對業務資料庫中存儲的數據操作的正確性。由於業務不同的功能流程所需要的數據和所操作的數據各不相同,業務不同功能流程所採用的不同測試用例在執行時就會互相影響。對這類業務的不同功能流程進行測試時,就會碰到這類業務的測試用例編寫複雜、重用性低以及這類業務不同功能流程所採用的測試用例維護困難等問題。
目前,基於資料庫操作的測試方法有兩種,一種方法是手工測試方法,另一種是自動測試方法。
當手工測試業務的不同功能流程時,如圖1所示,圖1為現有技術手工測試業務的不同功能流程的方法流程圖,預先設置測試業務的不同功能流程的各個用例,如用例1,…,用例n,在進行測試時,首先,在計算機中設置測試環境,從業務資料庫中獲取所存儲的初始數據,該初始數據根據需要預先生成並存儲在資料庫中,所設置的測試環境為各個用例在測試時能夠運行的業務平臺;其次,測試人員根據用例1的需要修改初始數據,以便用例1可以採用修改的初始數據正常運行,運行用例1後進行結果檢查;再次,測試人員根據用例2的需要修改用例1執行後的數據,以便用例2可以採用修改後的數據正常運行,運行用例2後進行結果檢查;…;最後,用例n採用用例n-1處理數據的方法處理數據,運行用例n後進行結果檢查,所有的用例執行完畢。
採用手工測試業務的不同功能流程,測試人員可以修改上一次用例執行後的數據,作為本次用例所採用的數據,從而依次完成所有用例。但是,採用這種方法也存在著缺點用例的運行和順序相關,當業務出現功能修改或功能增加時,設置的用例順序不可用;用例維護困難,一旦某個用例對數據修改發生了變化,導致後續用例所依賴的數據發生變化,後續用例變得不可執行;用例重用性低,用例沒有做到數據和運行程序相分離,導致用例重用性低。
當自動測試業務的不同功能流程時,如圖2所示,圖2為現有技術自動測試業務的不同功能流程的方法流程圖,預先設置測試業務的不同功能流程的各個用例,如用例1,…,用例n,在進行測試時,首先,在計算機中設置測試環境,從業務資料庫中獲取所存儲的初始數據;其次,用例1根據自身的需要對初始數據進行修改,以便用例1可以採用修改的初始數據正常運行,運行用例1以及進行結果檢查後,將用例1修改的初始數據恢復為初始數據;再次,用例2根據自身的需要對初始數據進行修改,以便用例2可以採用修改的初始數據正常運行,運行用例2以及進行結果檢查後,將用例2修改的初始數據恢復為初始數據;…;最後,用例n採用用例2處理數據的方法處理數據,運行用例n以及進行結果檢查後,將用例n修改的初始數據恢復為初始數據,所有的用例執行完畢。
採用自動測試業務的不同功能流程與採用手工測試業務的不同功能流程相比,用例運行和用例順序無關。採用自動測試業務的不同功能流程的方法主要是在用例運行完畢後,對用例修改的數據進行恢復,使得下一個用例運行前,數據恢復到業務資料庫存儲的初始數據。但是該方法也存在缺點用於測試業務的不同功能流程的各個用例設置複雜,每個用例都要包含兩個過程,對初始數據的修改以及初始數據的恢復;各個用例的重用性不高,如果更改用例的運行過程,則需要更改用例的初始數據的恢復過程,由於初始數據的恢復過程比較複雜,所以導致各個用例的重用性不高。
因此,在進行基於資料庫操作的自動化測試時,如何降低各個用例設置的複雜度、提高各個用例重用性以及使各個用例的維護更加容易成為了一個亟待解決的問題。

發明內容
有鑑於此,本發明的主要目的在於提供一種基於資料庫操作的自動化測試方法,該方法能夠降低用於測試業務不同功能流程的各個用例設置的複雜度、提高各個用例重用性以及使各個用例的維護更加容易。
根據上述目的,本發明的技術方案是這樣實現的一種基於資料庫操作的自動化測試方法,設置用於測試業務各個功能流程的各個用例以及測試環境,該方法還包括A、計算機將業務資料庫存儲的初始數據導出後存儲;B、當依次執行所設置的每個用例時,計算機將存儲的初始數據導入到業務資料庫中,每個用例對業務資料庫導入的初始數據根據自身需要修改後,採用修改後的數據執行每個用例,得到每個用例的檢查結果。
步驟A所述的初始數據包括各個用例運行時使用的數據以及各個用例運行時需要的業務管理環境。
步驟A所述的將業務資料庫存儲的初始數據導出後存儲的過程為將業務資料庫存儲的初始數據生成初始數據腳本,將生成的初始數據腳本作為初始數據從業務資料庫輸出並存儲;步驟B所述的將存儲的初始數據導入到業務資料庫中的過程為將存儲的初始數據腳本描述的初始數據導入到業務資料庫中。
所述生成初始數據腳本的過程為初始數據通過SQL語句進行描述,得到初始數據腳本。
所述的初始數據腳本存儲在計算機的存儲介質中。
步驟A所述的初始數據存儲在計算機的存儲介質中。
步驟B所述的每個用例對初始數據的修改是通過SQL語句進行的。
從上述方案可以看出,本發明將業務資料庫中的初始數據生成初始數據腳本後導出,存儲在計算機的存儲介質中,當要執行各個用例時,將計算機的存儲介質中保存的初始數據腳本描述的初始數據導入到業務資料庫中,各個用例對業務資料庫導入的初始數據進行修改並且採用修改後的數據進行運行後,檢查結果。由於本發明在進行基於資料庫操作的自動化測試時,各個用例不需要像現有技術那樣執行恢復初始數據的過程,而是預先將業務資料庫存儲的初始數據導出並存儲到計算機的存儲介質中,當執行各個用例時再將存儲在計算機存儲介質中的初始數據導入業務資料庫,恢復業務資料庫中由於上一用例執行而修改的初始數據,各個用例採用導入到業務資料庫的初始數據執行,從而降低用於測試業務的不同功能流程的各個用例設置的複雜度、提高各個用例重用性以及使各個用例的維護更加容易。


圖1為現有技術手工測試業務的不同功能流程的方法流程圖。
圖2為現有技術自動測試業務的不同功能流程的方法流程圖。
圖3為本發明基於資料庫操作的自動化測試方法流程圖。
具體實施例方式
為了使本發明的目的、技術方案和優點更加清楚明白,以下舉具體實施例並參照附圖,對本發明進行進一步詳細的說明。
為了使所設置的各個用例省去初始數據恢復的部分,本發明提供了一種基於資料庫操作的自動化測試方法,該方法將業務資料庫中的初始數據生成初始數據腳本後,導出保存在計算機的存儲介質中,當執行所設置的各個用例時,將計算機的存儲介質中存儲的初始數據腳本描述的初始數據再導入到業務資料庫中,所設置的各個用例對導入到業務資料庫中的初始數據進行修改後,運行各個用例。
本發明設置用於測試業務的不同功能流程的各個用例,每個用例要執行的過程包括初始數據導入到業務資料庫中的過程、對初始數據進行修改的過程、運行過程以及結果檢查過程。其中,對初始數據進行修改的過程、運行過程以及結果檢查過程和現有技術的用例要執行的過程相同,本發明在用例中增加了初始數據導入到業務資料庫中的過程。
圖3為本發明基於資料庫操作的自動化測試方法流程圖,其具體步驟為步驟300、計算機設置測試環境,該測試環境也可以稱之為業務運行環境,該測試環境就是保證各個用例可以正常運行的業務平臺。
步驟301~302、計算機獲取業務資料庫存儲的初始數據,並將初始數據在業務資料庫中生成初始數據腳本後,將所生成的初始數據腳本從業務資料庫中導出,存儲到計算機的存儲介質中。
所述導出的過程為從資料庫中讀取初始數據腳本。
所述計算機的存儲介質可以為計算機中的任何存儲空間,如計算機內存、計算機硬碟或者計算機磁碟等。
業務資料庫中的初始數據是根據客戶的要求生成並存儲的,例如,該初始數據可以為客戶的信息以及用例運行時需要的業務管理環境信息等,因此,該初始數據包括了各個用例運行時使用的數據以及各個用例運行時需要的業務管理環境。
初始數據生成初始數據腳本的過程為將初始數據用SQL(StructuredQuery Language)語句進行描述,得到初始數據腳本。
本發明還可以採用其它的腳本語言對初始數據進行描述,得到初始數據腳本。
步驟303、當執行各個用例時,將存儲在計算機存儲介質中的初始數據腳本所描述的初始數據導入到業務資料庫中,所設置各個用例對業務資料庫導入的初始數據根據自身需要進行修改後,採用修改後的數據運行,得到各個用例的檢查結果,完成測試。
所述導入過程為將存儲在計算機存儲介質中的初始數據腳本所描述的初始數據覆蓋業務資料庫中已經被上一用例修改後的初始數據;或者將資料庫中由於執行上一次用例而修改的初始數據進行刪除後,再將存儲在計算機存儲介質中的初始數據腳本所描述的初始數據輸入到業務資料庫中。
由於初始數據腳本採用SQL語句描述,並且保存有所有初始數據的信息,所以本發明可以採用現有技術從初始數據腳本中獲得初始數據後,再將初始數據導入到業務資料庫中。
執行所設置一個用例的過程為首先,將存儲在計算機存儲介質中的初始數據腳本所描述的初始數據導入到業務資料庫中;其次,該用例對業務資料庫導入的初始數據根據自身需要進行修改,得到適合運行該用例的業務管理環境以及該用例在運行時能夠採用的數據;再次,在該業務管理環境下該用例採用得到的數據進行運行;最後,該用例進行結果檢查,完成該用例的執行過程。
各個用例對初始數據腳本的修改通常是通過SQL語句進行的。
本發明還可以將業務資料庫存儲的初始數據直接導出到計算機的存儲介質中,當執行各個用例時,再依次直接將計算機的存儲介質中的初始數據導入到業務資料庫中,完成各個用例的執行。
本發明提供的方法具有以下優點用於測試業務的不同功能流程的各個用例編寫簡單,由於各個用例不包括初始數據的恢復過程,所以使得用於測試業務的不同功能流程的各個用例的設置複雜度降低;各個用例維護難度降低,當業務的不同功能修改時,只需修改相對應的用例,其他用例不受影響,當業務增加功能時,只需增加相對應的用例,其他用例不受影響;各個用例重用性提高,基本上做到用例和初始數據的相分離,從而提高各個用例的重用性。
以下以一個智能業務,即200電話卡業務為例,說明本發明提供的方法。
200電話卡的卡號以及密碼存儲在業務資料庫中,設置三個用例測試200電話卡業務的不同功能流程用例1200電話卡狀態正常,即沒有被使用,修改新密碼為54321,測試得到修改成功。
用例2200電話卡狀態異常,如正在使用,修改新密碼為22345,由於正在使用的電話卡不能修改密碼而測試得到修改失敗。
用例3200電話卡狀態正常,修改新密碼為12,由於密碼長度小於4位而測試得到修改失敗。
針對上述用例,如果採用圖1所述的測試業務的不同功能流程的方法,則整個過程為如下所述。
首先,設置測試環境後,進行初始數據設置,即在資料庫中設置一個200電話卡的卡號為200123456789,密碼為12345,該200電話卡的狀態正常。
其次,執行測試用例1,按照200電話卡業務的提示語音將資料庫存儲的200電話卡的卡號200123456789和密碼12345輸入,進入修改密碼功能修改密碼為54321,修改成功後檢查資料庫中的該200電話卡的密碼為54321,結果檢查成功。
再次,執行測試用例2,假設卡號為200123456789的200電話卡正在使用,按照200電話卡業務的提示語音將資料庫存儲的200電話卡的卡號200123456789輸入,並且將資料庫存儲的已經被用例1修改的密碼54321輸入,提示語音提示該200電話卡正在使用,不能修改密碼,檢查資料庫中的該200電話卡的密碼為54321,結果檢查成功。
最後,執行測試用例3,假設卡號為200123456789的200電話卡未被使用,按照200電話卡業務的提示語音將資料庫存儲的200電話卡的卡號200123456789輸入,並且將資料庫存儲的已經被用例1修改的密碼54321輸入,進入修改密碼功能修改密碼為12,提示語音提示密碼修改失敗,檢查資料庫中的該200電話卡的密碼為54321,結果檢查成功。
用例1~用例3執行完畢。
可以看出,採用圖1所述的方法,用例2和用例3在執行時,都使用的是資料庫存儲的已經被用例1修改的數據,要對資料庫存儲的已經被用例1修改的數據進行修改後執行相應的用例。
如果採用本發明所述的測試業務的不同功能流程的方法,則整個過程如下所述。
首先,設置測試環境後,進行初始數據設置,即在資料庫中設置一個200電話卡的卡號為200123456789,密碼為12345,該200電話卡的狀態正常,設置時可以採用SQL語句;將資料庫中的初始數據導出到計算機預先設置的文件中保存,如保存在設置的uml文件中。
其次,執行測試用例1,將uml文件中的數據恢復到資料庫中,即將資料庫存儲的數據刪除,將uml文件存儲的數據作為初始數據再次存儲到資料庫中,按照200電話卡業務的提示語音將資料庫存儲的200電話卡的卡號200123456789和密碼12345輸入,進入修改密碼功能修改密碼為54321,修改成功後檢查資料庫中的該200電話卡的密碼為54321,結果檢查成功。
再次,執行測試用例2,將uml文件中的數據恢復到資料庫中,即將資料庫存儲的數據200電話卡的卡號200123456789以及密碼54321刪除,將uml文件存儲的數據200電話卡的卡號200123456789以及密碼12345作為初始數據再次存儲到資料庫中,假設卡號為200123456789的200電話卡正在使用,按照200電話卡業務的提示語音將資料庫存儲的200電話卡的卡號200123456789以及密碼12345輸入,提示語音提示該200電話卡正在使用,不能修改密碼,檢查資料庫中的該200電話卡的密碼為12345,結果檢查成功。
最後,執行測試用例3,將uml文件中的數據恢復到資料庫中,即將資料庫存儲的數據200電話卡的卡號200123456789以及密碼12345刪除,將uml文件存儲的數據200電話卡的卡號200123456789以及密碼12345作為初始數據再次存儲到資料庫中,假設卡號為200123456789的200電話卡未被使用,按照200電話卡業務的提示語音將資料庫存儲的200電話卡的卡號200123456789和密碼12345輸入,進入修改密碼功能修改密碼為12,提示語音提示密碼修改失敗,檢查資料庫中的該200電話卡的密碼為12345,結果檢查成功。
可以看出,採用本發明提供的方法,每一個用例在執行時,所採用的數據都是資料庫存儲的初始數據,而不是經過上一用例修改後的存儲在資料庫中的數據。
用例1~用例3執行完畢。
以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內所做的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種基於資料庫操作的自動化測試方法,設置用於測試業務各個功能流程的各個用例以及測試環境,其特徵在於,該方法還包括A、計算機將業務資料庫存儲的初始數據導出後存儲;B、當依次執行所設置的每個用例時,計算機將存儲的初始數據導入到業務資料庫中,每個用例對業務資料庫導入的初始數據根據自身需要修改後,採用修改後的數據執行每個用例,得到每個用例的檢查結果。
2.如權利要求1所述的方法,其特徵在於,步驟A所述的初始數據包括各個用例運行時使用的數據以及各個用例運行時需要的業務管理環境。
3.如權利要求1所述的方法,其特徵在於,步驟A所述的將業務資料庫存儲的初始數據導出後存儲的過程為將業務資料庫存儲的初始數據生成初始數據腳本,將生成的初始數據腳本作為初始數據從業務資料庫輸出並存儲;步驟B所述的將存儲的初始數據導入到業務資料庫中的過程為將存儲的初始數據腳本描述的初始數據導入到業務資料庫中。
4.如權利要求3所述的方法,其特徵在於,所述生成初始數據腳本的過程為初始數據通過SQL語句進行描述,得到初始數據腳本。
5.如權利要求3所述的方法,其特徵在於,所述的初始數據腳本存儲在計算機的存儲介質中。
6.如權利要求1所述的方法,其特徵在於,步驟A所述的初始數據存儲在計算機的存儲介質中。
7.如權利要求1所述的方法,其特徵在於,步驟B所述的每個用例對初始數據的修改是通過SQL語句進行的。
全文摘要
本發明公開了一種基於資料庫操作的自動化測試方法,設置用於測試業務的各個功能流程的各個用例以及測試環境,該方法還包括A、計算機將業務資料庫存儲的初始數據導出後存儲;B、當依次執行所設置的每個用例時,計算機將存儲的初始數據導入到業務資料庫中,每個用例對業務資料庫導入的初始數據根據自身需要修改後,採用修改後的數據執行每個用例,得到每個用例的檢查結果。該方法能夠降低用於測試業務的各個功能流程的各個用例設置的複雜度、縮短測試周期、提高各個用例的重用性以及使各個用例的維護更加容易。
文檔編號G06Q10/00GK1851656SQ200510126099
公開日2006年10月25日 申請日期2005年11月24日 優先權日2005年11月24日
發明者劉顯林 申請人:華為技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀