專利名稱:數(shù)據(jù)測(cè)試方法、測(cè)試庫(kù)的生成方法及相關(guān)裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,尤其涉及一種數(shù)據(jù)測(cè)試方法、測(cè)試庫(kù)的生成方法及相
關(guān)裝置。
背景技術(shù):
在軟件的開發(fā)流程中,需要對(duì)一些程序的功能進(jìn)行自動(dòng)化測(cè)試;而在現(xiàn)有技術(shù)中,執(zhí)行某些功能的自動(dòng)化測(cè)試時(shí),需要對(duì)被測(cè)試的數(shù)據(jù)進(jìn)行備份,并且在測(cè)試完成的時(shí)候,使用備份的文件對(duì)測(cè)試完成后的數(shù)據(jù)進(jìn)行還原,以保證原有的數(shù)據(jù)模型不變,從而可以使用原始的數(shù)據(jù)進(jìn)行反復(fù)的自動(dòng)化測(cè)試和驗(yàn)證。在現(xiàn)有技術(shù)中,在執(zhí)行數(shù)據(jù)備份時(shí),是對(duì)整一種數(shù)據(jù)庫(kù)里面的數(shù)據(jù)進(jìn)行備份;并且,在很多情況下,許多的測(cè)試用例在運(yùn)行時(shí)都需要使用到原始的數(shù)據(jù)進(jìn)行測(cè)試,因此,導(dǎo)致每一次運(yùn)行一個(gè)測(cè)試用例都需要重新還原整個(gè)數(shù)據(jù)庫(kù)中原始的數(shù)據(jù),而整庫(kù)的還原效率非常低,嚴(yán)重影響測(cè)試效率。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)測(cè)試方法、測(cè)試庫(kù)的生成方法及相關(guān)裝置,用于高效的進(jìn)行數(shù)據(jù)的自動(dòng)化測(cè)試。本發(fā)明提供的數(shù)據(jù)測(cè)試方法,包括:根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù);對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行備份,得到數(shù)據(jù)備份文件;根據(jù)所述測(cè)試數(shù)據(jù)運(yùn)行測(cè)試用例;使用所述數(shù)據(jù)備份文件還原所述測(cè)試用例運(yùn)行之后的測(cè)試數(shù)據(jù)。本發(fā)明提供的測(cè)試庫(kù)的生成方法,包括:獲取測(cè)試數(shù)據(jù),根據(jù)所述測(cè)試數(shù)據(jù)的不同類型為所述測(cè)試數(shù)據(jù)添加不同的特征標(biāo)識(shí);根據(jù)預(yù)置規(guī)則對(duì)添加特征標(biāo)識(shí)后的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分。本發(fā)明提供的數(shù)據(jù)測(cè)試裝置,包括:數(shù)據(jù)提取單元,用于根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù);數(shù)據(jù)備份單元,用于對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行備份,得到數(shù)據(jù)備份文件;測(cè)試單元,用于根據(jù)所述測(cè)試數(shù)據(jù)運(yùn)行測(cè)試用例;備份還原單元,用于使用所述數(shù)據(jù)備份文件還原所述測(cè)試用例運(yùn)行之后的測(cè)試數(shù)據(jù)。本發(fā)明提供的測(cè)試庫(kù)生成裝置,包括:字段添加單元,用于獲取用戶錄入的測(cè)試數(shù)據(jù),根據(jù)不同的用戶標(biāo)識(shí)為所述測(cè)試數(shù)據(jù)添加不同的特征標(biāo)識(shí);用例劃分單元,用于根據(jù)預(yù)置規(guī)則對(duì)添加特征標(biāo)識(shí)后的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分。從以上技術(shù)方案可以看出,本發(fā)明實(shí)施例具有以下優(yōu)點(diǎn):在本發(fā)明實(shí)施例中,在建立測(cè)試庫(kù)時(shí),為不同類型的測(cè)試數(shù)據(jù)添加上相應(yīng)的特征標(biāo)識(shí),使得在進(jìn)行數(shù)據(jù)測(cè)試時(shí),本發(fā)明可以根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù),從而避免了對(duì)整個(gè)測(cè)試庫(kù)的測(cè)試數(shù)據(jù)進(jìn)行備份,提高了數(shù)據(jù)測(cè)試的效率。
圖1是本發(fā)明實(shí)施例中數(shù)據(jù)測(cè)試方法的一個(gè)流程示意圖;圖2是本發(fā)明實(shí)施例中數(shù)據(jù)測(cè)試方法的另一個(gè)流程示意圖;圖3是本發(fā)明實(shí)施例中測(cè)試庫(kù)生成方法的另一個(gè)流程示意圖;圖4是本發(fā)明實(shí)施例中數(shù)據(jù)測(cè)試裝置的邏輯結(jié)構(gòu)示意圖;圖5是本發(fā)明實(shí)施例中測(cè)試庫(kù)生成裝置的邏輯結(jié)構(gòu)示意圖。
具體實(shí)施例方式本發(fā)明實(shí)施例提供了一種數(shù)據(jù)測(cè)試方法、測(cè)試庫(kù)的生成方法及相關(guān)裝置,用于高效的進(jìn)行數(shù)據(jù)的自動(dòng)化測(cè)試。請(qǐng)參閱圖1,本發(fā)明實(shí)施例中數(shù)據(jù)測(cè)試方法的一個(gè)實(shí)施例包括:101、根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù);根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù)。具體的,在建立測(cè)試庫(kù)時(shí),數(shù)據(jù)庫(kù)生成裝置為用戶錄入的測(cè)試數(shù)據(jù)添加特征標(biāo)識(shí),使得不同類型的測(cè)試數(shù)據(jù)具有不同的特征標(biāo)識(shí),從而在提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù)時(shí),可以有針對(duì)性的提取相應(yīng)的測(cè)試數(shù)據(jù),避免對(duì)整個(gè)數(shù)據(jù)庫(kù)的同時(shí)的進(jìn)行處理。所述特征標(biāo)識(shí)用于唯一的識(shí)別一類測(cè)試數(shù)據(jù);具體的,所述特征標(biāo)識(shí)可以為用戶名字段、項(xiàng)目類型字段或數(shù)據(jù)的關(guān)鍵字串。如,該測(cè)試數(shù)據(jù)都是某一用戶所使用的業(yè)務(wù),則可以根據(jù)該用戶注冊(cè)的測(cè)試賬號(hào)或用戶名稱為該用戶名字段(即特征標(biāo)識(shí))。102、對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行備份;在提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù)之后,對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行備份,得到所述測(cè)試數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)備份文件。在實(shí)際應(yīng)用中,具體的,所述數(shù)據(jù)備份文件可以為結(jié)構(gòu)化查詢語言(SQL,Structured Query Language)腳本格式的文件??蛇x的,對(duì)于數(shù)據(jù)備份文件,可以使用緊湊的SQL語法生成,使得每個(gè)數(shù)據(jù)表中只有I條SQL語句進(jìn)行執(zhí)行,并采用批次處理,關(guān)閉索引的自動(dòng)建立等方法,加快SQL腳本的執(zhí)行效率。103、根據(jù)所述測(cè)試數(shù)據(jù)運(yùn)行測(cè)試用例;在對(duì)原始的測(cè)試數(shù)據(jù)進(jìn)行備份之后,即可以根據(jù)所述測(cè)試數(shù)據(jù)運(yùn)行測(cè)試用例。在實(shí)際應(yīng)用中,在測(cè)試庫(kù)建立時(shí),會(huì)對(duì)分屬于不同功能模塊的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分,使得在執(zhí)行測(cè)試時(shí),可以直接使用數(shù)據(jù)庫(kù)中已劃分完成的測(cè)試用例運(yùn)行測(cè)試內(nèi)容。104、使用所述數(shù)據(jù)備份文件還原所述測(cè)試用例運(yùn)行之后的測(cè)試數(shù)據(jù)。在完成測(cè)試用例的運(yùn)行之后,可以使用所述數(shù)據(jù)備份文件還原所述測(cè)試用例運(yùn)行之后的測(cè)試數(shù)據(jù)。在實(shí)際執(zhí)行還原操作的過程中,先刪除對(duì)應(yīng)的測(cè)試庫(kù)中所有所述特征字段對(duì)應(yīng)的測(cè)試數(shù)據(jù),然后查找之前備份的數(shù)據(jù)備份文件進(jìn)行還原,使得原始的測(cè)試數(shù)據(jù)可以被反復(fù)的利用。在本發(fā)明實(shí)施例中,在建立測(cè)試庫(kù)時(shí),為不同類型的測(cè)試數(shù)據(jù)都添加上相應(yīng)的特征標(biāo)識(shí),使得在進(jìn)行數(shù)據(jù)測(cè)試時(shí),本發(fā)明可以根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù),從而避免了對(duì)整個(gè)數(shù)據(jù)庫(kù)的測(cè)試數(shù)據(jù)進(jìn)行備份,提高了數(shù)據(jù)測(cè)試的效率。
在現(xiàn)有技術(shù)中,測(cè)試用例間可能存在關(guān)聯(lián)關(guān)系,若同時(shí)運(yùn)行多個(gè)測(cè)試用例,則會(huì)可能會(huì)引起數(shù)據(jù)的沖突,本發(fā)明提供了相應(yīng)的解決方法,請(qǐng)參閱圖2,本發(fā)明實(shí)施例中數(shù)據(jù)測(cè)試方法的另一個(gè)實(shí)施例包括:201、數(shù)據(jù)測(cè)試裝置根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù);數(shù)據(jù)測(cè)試裝置根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù)。具體的,在建立測(cè)試庫(kù)時(shí),數(shù)據(jù)庫(kù)生成裝置為用戶錄入的測(cè)試數(shù)據(jù)添加特征標(biāo)識(shí),使得具有不同類型的測(cè)試數(shù)據(jù)具有不同的特征標(biāo)識(shí),從而在數(shù)據(jù)測(cè)試裝置提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù)時(shí),可以有針對(duì)性的提取相應(yīng)的測(cè)試數(shù)據(jù),避免對(duì)整個(gè)數(shù)據(jù)庫(kù)的同時(shí)的進(jìn)行處理。202、數(shù)據(jù)測(cè)試裝置對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行備份;在數(shù)據(jù)測(cè)試裝置提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù)之后,數(shù)據(jù)測(cè)試裝置對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行備份,得到所述測(cè)試數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)備份文件。在實(shí)際應(yīng)用中,具體的,所述數(shù)據(jù)備份文件可以為SQL腳本格式的文件。可選的,對(duì)于數(shù)據(jù)備份文件,可以使用緊湊的SQL語法生成,使得每個(gè)數(shù)據(jù)表中只有I條SQL語句進(jìn)行執(zhí)行,并采用批次處理,關(guān)閉索引的自動(dòng)建立等方法,加快SQL腳本的執(zhí)行效率。203、數(shù)據(jù)測(cè)試裝置檢測(cè)是否有待運(yùn)行的測(cè)試用例;數(shù)據(jù)測(cè)試裝置檢測(cè)是否有待運(yùn)行的測(cè)試用例,若有,則觸發(fā)步驟204,檢測(cè)是否有狀態(tài)為空閑的測(cè)試庫(kù);若沒有,則結(jié)束所述測(cè)試用例的運(yùn)行流程,并觸發(fā)步驟206,進(jìn)行測(cè)試數(shù)據(jù)的備份還原。204、數(shù)據(jù)測(cè)試裝置檢測(cè)是否有狀態(tài)為空閑的測(cè)試庫(kù);數(shù)據(jù)測(cè)試裝置檢測(cè)是否有狀態(tài)為空閑的測(cè)試庫(kù),所述測(cè)試庫(kù)具有兩個(gè)以上,若有,則觸發(fā)步驟205,建立一個(gè)后臺(tái)線程;若無,則等待狀態(tài)為空閑的測(cè)試庫(kù)。在本發(fā)明實(shí)施例中,數(shù)據(jù)測(cè)試裝置建立有兩個(gè)以上的測(cè)試庫(kù),所述測(cè)試庫(kù)存儲(chǔ)了所述測(cè)試用例,簽署已備份的用戶數(shù)據(jù)SQL腳本,測(cè)試庫(kù)本地的運(yùn)行狀態(tài)(包括:運(yùn)行中和空閑),以及測(cè)試賬戶相關(guān)的業(yè)務(wù)數(shù)據(jù)。在測(cè)試庫(kù)建立測(cè)試用例時(shí),根據(jù)業(yè)務(wù)功能對(duì)測(cè)試數(shù)據(jù)進(jìn)行劃分,使得各個(gè)測(cè)試用例的運(yùn)行結(jié)果為所述業(yè)務(wù)功能所需要得到的最終參數(shù),避免各個(gè)測(cè)試用例間產(chǎn)生關(guān)聯(lián)關(guān)系,從而使得測(cè)試用例可以被同時(shí)地運(yùn)行。具體的,測(cè)試用例的劃分可以遵循以下規(guī)則:一、若待測(cè)的業(yè)務(wù)間的功能相互獨(dú)立,則為所述待測(cè)的業(yè)務(wù)分別建立測(cè)試用例;如,用戶對(duì)各個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)務(wù),由于各個(gè)產(chǎn)品的續(xù)費(fèi)都是相互獨(dú)立的,沒有數(shù)據(jù)關(guān)聯(lián),因此,可以為每個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)務(wù)單獨(dú)建立測(cè)試用例;其中,若上述每個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)務(wù)都是針對(duì)同一個(gè)用戶的,則可以創(chuàng)建一個(gè)測(cè)試賬號(hào),然后為該測(cè)試賬號(hào)的每個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)單獨(dú)建立測(cè)試用例。二、若各項(xiàng)業(yè)務(wù)之間涉及同一個(gè)流程操作,則將與所述各項(xiàng)業(yè)務(wù)相關(guān)的測(cè)試數(shù)據(jù)劃分為一個(gè)測(cè)試用例;如,驗(yàn)證產(chǎn)品的購(gòu)買開通流程;所述購(gòu)買開通流程包括:用戶產(chǎn)品下單、付款、后臺(tái)確認(rèn)付款、開通服務(wù)、進(jìn)入服務(wù)使用5個(gè)節(jié)點(diǎn)。每個(gè)節(jié)點(diǎn)的數(shù)據(jù)驗(yàn)證必須要使用上一個(gè)節(jié)點(diǎn)的結(jié)果數(shù)據(jù),如果把每個(gè)節(jié)點(diǎn)都編寫為獨(dú)立的測(cè)試用例,則要求測(cè)試用例的執(zhí)行需要按照順序來執(zhí)行,顯然這在自動(dòng)化實(shí)際運(yùn)行過程中有太多制約。因此,在建立測(cè)試用例時(shí),需要將與所述購(gòu)買開通流程相關(guān)的測(cè)試數(shù)據(jù)劃分為一個(gè)測(cè)試用例,并根據(jù)上述流程次序進(jìn)行測(cè)試腳本的編寫。上面僅以一些例子對(duì)本發(fā)明實(shí)施例中的應(yīng)用場(chǎng)景進(jìn)行了說明,可以理解的是,在實(shí)際應(yīng)用中,還可以有更多的應(yīng)用場(chǎng)景,具體此處不作限定。205、數(shù)據(jù)測(cè)試裝置建立后臺(tái)線程;數(shù)據(jù)測(cè)試裝置建立一個(gè)后臺(tái)進(jìn)程,在所述運(yùn)行狀態(tài)為空閑的測(cè)試庫(kù)中運(yùn)行所述待運(yùn)行的測(cè)試用例。具體的,在所述測(cè)試庫(kù)已經(jīng)開始運(yùn)行測(cè)試用例之后,可以將所述測(cè)試庫(kù)的運(yùn)行狀態(tài)變更為“運(yùn)行中”,使得數(shù)據(jù)測(cè)試裝置可以根據(jù)各個(gè)測(cè)試庫(kù)的實(shí)時(shí)狀態(tài)監(jiān)控測(cè)試用例的運(yùn)行過程;同理,當(dāng)所述測(cè)試庫(kù)完成了測(cè)試用例的運(yùn)行之后,可以將所述測(cè)試庫(kù)的運(yùn)行狀態(tài)變更為“空閑”,等待運(yùn)行下一個(gè)測(cè)試用例。 206、數(shù)據(jù)測(cè)試裝置執(zhí)行測(cè)試數(shù)據(jù)的備份還原。在確認(rèn)所有的測(cè)試用例都運(yùn)行完畢之后,數(shù)據(jù)測(cè)試裝置將所有的測(cè)試數(shù)據(jù)還原為測(cè)試前的備份數(shù)據(jù)?;?,還有測(cè)試用例需要用到相關(guān)的測(cè)試數(shù)據(jù)時(shí),則對(duì)所述需要用到相關(guān)的測(cè)試數(shù)據(jù)進(jìn)行還原;具體的,由于測(cè)試用例進(jìn)行劃分時(shí)是針對(duì)測(cè)試賬號(hào)和業(yè)務(wù)功能進(jìn)行劃分的,因此,在還原測(cè)試用例所需用到相關(guān)的測(cè)試數(shù)據(jù)時(shí),可以查詢所述測(cè)試用例對(duì)應(yīng)的測(cè)試賬號(hào),根據(jù)所述測(cè)試賬號(hào)確定需要提取測(cè)試數(shù)據(jù)的特征標(biāo)識(shí),使用所述特征標(biāo)識(shí)提取備份數(shù)據(jù)進(jìn)行還原。下面對(duì)測(cè)試庫(kù)的生成方法進(jìn)行描述,請(qǐng)參閱圖3,本發(fā)明實(shí)施例中測(cè)試庫(kù)生成方法的一個(gè)實(shí)施例包括:301、測(cè)試庫(kù)生成裝置獲取測(cè)試數(shù)據(jù);測(cè)試庫(kù)生成裝置獲取測(cè)試數(shù)據(jù),可選的,所述測(cè)試數(shù)據(jù)可以為用戶錄入的數(shù)據(jù),也可以為測(cè)試庫(kù)生成裝置從其它數(shù)據(jù)庫(kù)中獲取到的測(cè)試相關(guān)數(shù)據(jù)。302、測(cè)試庫(kù)生成裝置分配特征標(biāo)識(shí);測(cè)試庫(kù)生成裝置根據(jù)所述測(cè)試數(shù)據(jù)的不同類型為所述測(cè)試數(shù)據(jù)添加不同的特征標(biāo)識(shí),所述特征標(biāo)識(shí)用于唯一的識(shí)別一類測(cè)試數(shù)據(jù);具體的,所述特征標(biāo)識(shí)可以為用戶名字段、項(xiàng)目類型字段或數(shù)據(jù)的關(guān)鍵字串;可選的,所述用戶名字段可以為用戶的名稱或用戶的測(cè)試賬號(hào)。在本發(fā)明實(shí)施例中,測(cè)試數(shù)據(jù)在存入測(cè)試庫(kù)時(shí)添加有特征標(biāo)識(shí),使得當(dāng)需要調(diào)用測(cè)試數(shù)據(jù)時(shí),可有針對(duì)性的對(duì)需要進(jìn)行測(cè)試的測(cè)試賬號(hào)的測(cè)試數(shù)據(jù)進(jìn)行提取,避免了對(duì)全盤數(shù)據(jù)進(jìn)行操作。303、測(cè)試庫(kù)生成裝置進(jìn)行測(cè)試用例的劃分。在對(duì)測(cè)試數(shù)據(jù)添加了特征標(biāo)識(shí)之后,測(cè)試庫(kù)生成裝置根據(jù)預(yù)置規(guī)則對(duì)添加特征標(biāo)識(shí)后的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分。具體的,測(cè)試庫(kù)生成裝置可以根據(jù)業(yè)務(wù)功能對(duì)添加特征標(biāo)識(shí)后的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分,使得所述測(cè)試用例的運(yùn)行結(jié)果為所述業(yè)務(wù)功能所需要得到的最終參數(shù);并且,在測(cè)試用例的劃分時(shí),還可以考慮測(cè)試賬號(hào)等參考因素,具體可以參考以下的劃分規(guī)則:
一、若待測(cè)的業(yè)務(wù)間的功能相互獨(dú)立,則為所述待測(cè)的業(yè)務(wù)分別建立測(cè)試用例;如,用戶對(duì)各個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)務(wù),由于各個(gè)產(chǎn)品的續(xù)費(fèi)都是相互獨(dú)立的,沒有數(shù)據(jù)關(guān)聯(lián),因此,可以為每個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)務(wù)單獨(dú)建立測(cè)試用例;其中,若上述每個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)務(wù)都是針對(duì)同一個(gè)用戶的,則可以創(chuàng)建一個(gè)測(cè)試賬號(hào),然后為該測(cè)試賬號(hào)的每個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)單獨(dú)建立測(cè)試用例。二、若各項(xiàng)業(yè)務(wù)之間涉及同一個(gè)流程操作,則將與所述各項(xiàng)業(yè)務(wù)相關(guān)的測(cè)試數(shù)據(jù)劃分為一個(gè)測(cè)試用例;如,驗(yàn)證產(chǎn)品的購(gòu)買開通流程;所述購(gòu)買開通流程包括:用戶產(chǎn)品下單、付款、后臺(tái)確認(rèn)付款、開通服務(wù)、進(jìn)入服務(wù)使用5個(gè)節(jié)點(diǎn)。每個(gè)節(jié)點(diǎn)的數(shù)據(jù)驗(yàn)證必須要使用上一個(gè)節(jié)點(diǎn)的結(jié)果數(shù)據(jù),如果把每個(gè)節(jié)點(diǎn)都編寫為獨(dú)立的測(cè)試用例,則要求測(cè)試用例的執(zhí)行需要按照順序來執(zhí)行,顯然這在自動(dòng)化實(shí)際運(yùn)行過程中有太多制約。因此,在建立測(cè)試用例時(shí),需要將與所述購(gòu)買開通流程相關(guān)的測(cè)試數(shù)據(jù)劃分為一個(gè)測(cè)試用例,并根據(jù)上述流程次序進(jìn)行測(cè)試腳本的編寫。上面僅以一些例子對(duì)本發(fā)明實(shí)施例中的應(yīng)用場(chǎng)景進(jìn)行了說明,可以理解的是,在實(shí)際應(yīng)用中,還可以有更多的應(yīng)用場(chǎng)景,具體此處不作限定。下面對(duì)用于執(zhí)行上述數(shù)據(jù)測(cè)試方法的本發(fā)明中數(shù)據(jù)測(cè)試裝置的實(shí)施例進(jìn)行說明,其邏輯結(jié)構(gòu)請(qǐng)參考圖4,本發(fā)明實(shí)施例中數(shù)據(jù)測(cè)試裝置的一個(gè)實(shí)施例包括:數(shù)據(jù)提取單元401,用于根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù);數(shù)據(jù)備份單元402,用于對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行備份,得到數(shù)據(jù)備份文件;測(cè)試單元403,用于根據(jù)所述測(cè)試數(shù)據(jù)運(yùn)行測(cè)試用例;備份還原單元404,用于使用所述數(shù)據(jù)備份文件還原所述測(cè)試用例運(yùn)行之后的測(cè)試數(shù)據(jù)??蛇x的,本發(fā)明實(shí)施例中的數(shù)據(jù)測(cè)試裝置還可以進(jìn)一步包括:狀態(tài)標(biāo)記單元405,用于將運(yùn)行測(cè)試用例的測(cè)試庫(kù)的狀態(tài)標(biāo)記為測(cè)試中,在所述測(cè)試用例運(yùn)行結(jié)束后,將所述測(cè)試庫(kù)的狀態(tài)標(biāo)記為空閑??蛇x的,本發(fā)明實(shí)施例中的測(cè)試單元403可以包括:運(yùn)行檢測(cè)模塊4031,用于檢測(cè)是否有待運(yùn)行的測(cè)試用例,所述測(cè)試庫(kù)具有兩個(gè)以上,若有,則觸發(fā)狀態(tài)檢測(cè)模塊4032,若無,則結(jié)束測(cè)試用例的運(yùn)行流程;狀態(tài)檢測(cè)模塊4032,用于檢測(cè)是否狀態(tài)為空閑的測(cè)試庫(kù),所述測(cè)試庫(kù)具有兩個(gè)以上,若有,則觸發(fā)線程建立模塊4033,若無,則等待狀態(tài)為空閑的測(cè)試庫(kù);線程建立模塊4033,用于建立后臺(tái)線程,并使用所述空閑的測(cè)試庫(kù)運(yùn)行所述待運(yùn)行的測(cè)試用例。本發(fā)明實(shí)施例數(shù)據(jù)測(cè)試裝置中各個(gè)單元具體的操作過程如下:數(shù)據(jù)提取單元401根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù)。具體的,在建立測(cè)試庫(kù)時(shí),數(shù)據(jù)庫(kù)生成裝置為用戶錄入的測(cè)試數(shù)據(jù)添加特征標(biāo)識(shí),使得具有不同類型的測(cè)試數(shù)據(jù)具有不同的特征標(biāo)識(shí),從而在數(shù)據(jù)測(cè)試裝置提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù)時(shí),可以有針對(duì)性的提取相應(yīng)的測(cè)試數(shù)據(jù),避免對(duì)整個(gè)數(shù)據(jù)庫(kù)的同時(shí)的進(jìn)行處理。在提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù)之后,數(shù)據(jù)備份單元402對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行備份,得到所述測(cè)試數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)備份文件。在實(shí)際應(yīng)用中,具體的,所述數(shù)據(jù)備份文件可以為SQL腳本格式的文件。可選的,對(duì)于數(shù)據(jù)備份文件,可以使用緊湊的SQL語法生成,使得每個(gè)數(shù)據(jù)表中只有I條SQL語句進(jìn)行執(zhí)行,并采用批次處理,關(guān)閉索引的自動(dòng)建立等方法,加快SQL腳本的執(zhí)行效率。在完成了測(cè)試數(shù)據(jù)的備份之后,測(cè)試單元403根據(jù)所述測(cè)試數(shù)據(jù)運(yùn)行測(cè)試用例。具體的,可以有測(cè)試單元403的運(yùn)行檢測(cè)模塊4031檢測(cè)是否有待運(yùn)行的測(cè)試用例,若有,則觸發(fā)狀態(tài)檢測(cè)模塊4032 ;若沒有,則結(jié)束所述測(cè)試用例的運(yùn)行流程,并觸發(fā)備份還原單元404。狀態(tài)檢測(cè)模塊4032檢測(cè)是否狀態(tài)為空閑的測(cè)試庫(kù),所述測(cè)試庫(kù)具有兩個(gè)以上,若有,則觸發(fā)線程建立模塊4033建立后臺(tái)線程,并使用所述空閑的測(cè)試庫(kù)運(yùn)行所述待運(yùn)行的測(cè)試用例;若無,則等待狀態(tài)為空閑的測(cè)試庫(kù)??蛇x的,在所述測(cè)試用例運(yùn)行時(shí),狀態(tài)標(biāo)記單元405將運(yùn)行測(cè)試用例的測(cè)試庫(kù)的狀態(tài)標(biāo)記為測(cè)試中;在所述測(cè)試用例運(yùn)行結(jié)束后,狀態(tài)標(biāo)記單元405將所述測(cè)試庫(kù)的狀態(tài)標(biāo)記為空閑。下面對(duì)用于執(zhí)行上述測(cè)試庫(kù)生成方法的本發(fā)明中測(cè)試庫(kù)生成裝置的實(shí)施例進(jìn)行說明,其邏輯結(jié)構(gòu)請(qǐng)參考圖5,本發(fā)明實(shí)施例中測(cè)試庫(kù)生成裝置的一個(gè)實(shí)施例包括:字段添加單元501,用于獲取用戶錄入的測(cè)試數(shù)據(jù),根據(jù)不同的用戶標(biāo)識(shí)為所述測(cè)試數(shù)據(jù)添加不同的特征標(biāo)識(shí);用例劃分單元502,用于根據(jù)預(yù)置規(guī)則對(duì)添加特征標(biāo)識(shí)后的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分。本發(fā)明實(shí)施例數(shù)據(jù)裝置中各個(gè)單元具體的操作過程如下:獲取測(cè)試數(shù)據(jù),可選的,所述測(cè)試數(shù)據(jù)可以為用戶錄入的數(shù)據(jù),也可以為測(cè)試庫(kù)生成裝置從其它數(shù)據(jù)庫(kù)中獲取到的測(cè)試相關(guān)數(shù)據(jù)。字段添加單元501根據(jù)所述測(cè)試數(shù)據(jù)的不同類型為所述測(cè)試數(shù)據(jù)添加不同的特征標(biāo)識(shí),所述特征標(biāo)識(shí)用于唯一的識(shí)別一類測(cè)試數(shù)據(jù);具體的,所述特征標(biāo)識(shí)可以為用戶名字段、項(xiàng)目類型字段或數(shù)據(jù)的關(guān)鍵字串。。在本發(fā)明實(shí)施例中,測(cè)試數(shù)據(jù)在存入測(cè)試庫(kù)時(shí)添加有特征標(biāo)識(shí),使得當(dāng)需要調(diào)用測(cè)試數(shù)據(jù)時(shí),可有針對(duì)性的對(duì)需要進(jìn)行測(cè)試的測(cè)試賬號(hào)的測(cè)試數(shù)據(jù)進(jìn)行提取,避免了對(duì)全盤數(shù)據(jù)進(jìn)行操作。在對(duì)測(cè)試數(shù)據(jù)添加了特征標(biāo)識(shí)之后,用例劃分單元502根據(jù)預(yù)置規(guī)則對(duì)添加特征標(biāo)識(shí)后的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分。具體的,測(cè)試庫(kù)生成裝置可以根據(jù)業(yè)務(wù)功能對(duì)添加特征標(biāo)識(shí)后的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分,使得所述測(cè)試用例的運(yùn)行結(jié)果為所述業(yè)務(wù)功能所需要得到的最終參數(shù);并且,在測(cè)試用例的劃分時(shí),還可以考慮測(cè)試賬號(hào)等參考因素,具體可以參考以下的劃分規(guī)則:一、若待測(cè)的業(yè)務(wù)間的功能相互獨(dú)立,則為所述待測(cè)的業(yè)務(wù)分別建立測(cè)試用例;如,用戶對(duì)各個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)務(wù),由于各個(gè)產(chǎn)品的續(xù)費(fèi)都是相互獨(dú)立的,沒有數(shù)據(jù)關(guān)聯(lián),因此,可以為每個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)務(wù)單獨(dú)建立測(cè)試用例;其中,若上述每個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)務(wù)都是針對(duì)同一個(gè)用戶的,則可以創(chuàng)建一個(gè)測(cè)試賬號(hào),然后為該測(cè)試賬號(hào)的每個(gè)產(chǎn)品的續(xù)費(fèi)業(yè)單獨(dú)建立測(cè)試用例。二、若各項(xiàng)業(yè)務(wù)之間涉及同一個(gè)流程操作,則將與所述各項(xiàng)業(yè)務(wù)相關(guān)的測(cè)試數(shù)據(jù)劃分為一個(gè)測(cè)試用例;如,驗(yàn)證產(chǎn)品的購(gòu)買開通流程;所述購(gòu)買開通流程包括:用戶產(chǎn)品下單、付款、后臺(tái)確認(rèn)付款、開通服務(wù)、進(jìn)入服務(wù)使用5個(gè)節(jié)點(diǎn)。每個(gè)節(jié)點(diǎn)的數(shù)據(jù)驗(yàn)證必須要使用上一個(gè)節(jié)點(diǎn)的結(jié)果數(shù)據(jù),如果把每個(gè)節(jié)點(diǎn)都編寫為獨(dú)立的測(cè)試用例,則要求測(cè)試用例的執(zhí)行需要按照順序來執(zhí)行,顯然這在自動(dòng)化實(shí)際運(yùn)行過程中有太多制約。因此,在建立測(cè)試用例時(shí),需要將與所述購(gòu)買開通流程相關(guān)的測(cè)試數(shù)據(jù)劃分為一個(gè)測(cè)試用例,并根據(jù)上述流程次序進(jìn)行測(cè)試腳本的編寫。在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的裝置和方法可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括:U盤、移動(dòng)硬盤、只讀存儲(chǔ)器(ROM,Read-OnlyMemory)、隨機(jī)存取存儲(chǔ)器(RAM, Random Access Memory)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。以上所述,僅為本發(fā)明的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種數(shù)據(jù)測(cè)試方法,其特征在于,包括: 根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù); 對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行備份,得到數(shù)據(jù)備份文件; 根據(jù)所述測(cè)試數(shù)據(jù)運(yùn)行測(cè)試用例; 使用所述數(shù)據(jù)備份文件還原所述測(cè)試用例運(yùn)行之后的測(cè)試數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,若所述測(cè)試用例有兩個(gè)以上,則所述根據(jù)測(cè)試數(shù)據(jù)運(yùn)行測(cè)試用例,包括: 根據(jù)所述測(cè)試數(shù)據(jù),使用兩個(gè)以上的后臺(tái)線程運(yùn)行所述測(cè)試用例。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述根據(jù)測(cè)試數(shù)據(jù),使用兩個(gè)以上的后臺(tái)線程運(yùn)行所述測(cè)試用例,包括: 檢測(cè)是否有待運(yùn)行的測(cè)試用例; 若有,則檢測(cè)是否有狀態(tài)為空閑的測(cè)試庫(kù),所述測(cè)試庫(kù)具有兩個(gè)以上;若有狀態(tài)為空閑的測(cè)試庫(kù),則建立一個(gè)后臺(tái)線程,使用所述空閑的測(cè)試庫(kù)運(yùn)行所述待運(yùn)行的測(cè)試用例;若沒有狀態(tài)為空閑的測(cè)試庫(kù),則等待狀態(tài)為空閑的測(cè)試庫(kù)。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述使用空閑的測(cè)試庫(kù)運(yùn)行所述待運(yùn)行的測(cè)試用例之后,包括: 將運(yùn)行測(cè)試用例的測(cè)試庫(kù)的狀態(tài)標(biāo)記為測(cè)試中; 在所述測(cè)試用例運(yùn)行結(jié) 束后,將所述測(cè)試庫(kù)的狀態(tài)標(biāo)記為空閑。
5.—種測(cè)試庫(kù)生成方法,其特征在于,包括: 獲取測(cè)試數(shù)據(jù),根據(jù)所述測(cè)試數(shù)據(jù)的不同類型為所述測(cè)試數(shù)據(jù)添加不同的特征標(biāo)識(shí); 根據(jù)預(yù)置規(guī)則對(duì)添加特征標(biāo)識(shí)后的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述根據(jù)預(yù)置規(guī)則對(duì)添加特征標(biāo)識(shí)后的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分,包括: 根據(jù)業(yè)務(wù)功能對(duì)添加特征標(biāo)識(shí)后的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分,使得所述測(cè)試用例的運(yùn)行結(jié)果為所述業(yè)務(wù)功能所需要得到的最終參數(shù)。
7.一種數(shù)據(jù)測(cè)試裝置,其特征在于,包括: 數(shù)據(jù)提取單元,用于根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù); 數(shù)據(jù)備份單元,用于對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行備份,得到數(shù)據(jù)備份文件; 測(cè)試單元,用于根據(jù)所述測(cè)試數(shù)據(jù)運(yùn)行測(cè)試用例; 備份還原單元,用于使用所述數(shù)據(jù)備份文件還原所述測(cè)試用例運(yùn)行之后的測(cè)試數(shù)據(jù)。
8.根據(jù)權(quán)利要求7所述的數(shù)據(jù)測(cè)試裝置,其特征在于,所述測(cè)試單元包括: 運(yùn)行檢測(cè)模塊,用于檢測(cè)是否有待運(yùn)行的測(cè)試用例,所述測(cè)試庫(kù)具有兩個(gè)以上,若有,則觸發(fā)狀態(tài)檢測(cè)模塊,若無,則結(jié)束測(cè)試用例的運(yùn)行流程; 狀態(tài)檢測(cè)模塊,用于檢測(cè)是否狀態(tài)為空閑的測(cè)試庫(kù),所述測(cè)試庫(kù)具有兩個(gè)以上,若有,則觸發(fā)線程建立單元,若無,則等待狀態(tài)為空閑的測(cè)試庫(kù); 線程建立模塊,用于建立后臺(tái)線程,并使用所述空閑的測(cè)試庫(kù)運(yùn)行所述待運(yùn)行的測(cè)試用例。
9.根據(jù)權(quán)利要求8所述的數(shù)據(jù)測(cè)試裝置,其特征在于,所述數(shù)據(jù)測(cè)試裝置還包括: 狀態(tài)標(biāo)記單元,用于將運(yùn)行測(cè)試用例的測(cè)試庫(kù)的狀態(tài)標(biāo)記為測(cè)試中,在所述測(cè)試用例運(yùn)行結(jié)束后,將所述測(cè)試庫(kù)的狀態(tài)標(biāo)記為空閑。
10.一種測(cè)試庫(kù)生成裝置,其特征在于,包括: 字段添加單元,用于獲取用戶錄入的測(cè)試數(shù)據(jù),根據(jù)不同的用戶標(biāo)識(shí)為所述測(cè)試數(shù)據(jù)添加不同的特征標(biāo)識(shí); 用例劃分單元,用于根據(jù)預(yù)置規(guī)則對(duì)添加特征標(biāo)識(shí)后的測(cè)試數(shù)據(jù)進(jìn)行測(cè)試用例的劃分。 ·
全文摘要
本發(fā)明實(shí)施例公開了一種數(shù)據(jù)測(cè)試方法、測(cè)試庫(kù)的生成方法及相關(guān)裝置,用于高效的進(jìn)行數(shù)據(jù)的自動(dòng)化測(cè)試。本發(fā)明實(shí)施例方法包括根據(jù)特征標(biāo)識(shí)提取需要進(jìn)行測(cè)試的測(cè)試數(shù)據(jù);對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行備份,得到數(shù)據(jù)備份文件;根據(jù)所述測(cè)試數(shù)據(jù)運(yùn)行測(cè)試用例;使用所述數(shù)據(jù)備份文件還原所述測(cè)試用例運(yùn)行之后的測(cè)試數(shù)據(jù)。
文檔編號(hào)G06F11/14GK103186561SQ201110448450
公開日2013年7月3日 申請(qǐng)日期2011年12月28日 優(yōu)先權(quán)日2011年12月28日
發(fā)明者李娟 申請(qǐng)人:深圳市金蝶友商電子商務(wù)服務(wù)有限公司