999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種測(cè)試用例精簡(jiǎn)與自動(dòng)生成方法

2022-11-18 03:11:20楊永凱劉中一
甘肅科技 2022年20期
關(guān)鍵詞:生產(chǎn)功能

劉 輝,楊永凱,劉中一

(1.民航旅客服務(wù)智能化應(yīng)用技術(shù)重點(diǎn)實(shí)驗(yàn)室,北京 101318;2.中國(guó)民航信息網(wǎng)絡(luò)股份有限公司,北京 101318)

1 引言

近年來(lái),隨著業(yè)務(wù)復(fù)雜度的不斷提升,高效、可靠地保障企業(yè)級(jí)軟件質(zhì)量,杜絕各種運(yùn)營(yíng)事故和安全風(fēng)險(xiǎn),是所有企業(yè)面臨的嚴(yán)峻挑戰(zhàn)。眾所周知,軟件質(zhì)量會(huì)影響項(xiàng)目的進(jìn)度、成本和范圍,最終影響客戶對(duì)企業(yè)的信賴。因此,企業(yè)對(duì)軟件質(zhì)量的要求日益增高。為了保證軟件質(zhì)量,在開發(fā)過(guò)程中引入了多種軟件測(cè)試技術(shù)[1-2]。目前國(guó)內(nèi)公司主要是以功能測(cè)試為主,功能測(cè)試的技術(shù)手段又以手工測(cè)試為主,而自動(dòng)化測(cè)試是在手工測(cè)試之后進(jìn)行的,主要用于回歸測(cè)試階段。自動(dòng)化測(cè)試是軟件測(cè)試活動(dòng)中一個(gè)重要的分支和組成部分,即利用工具或腳本達(dá)到測(cè)試目的,沒(méi)有人工或者極少人工參與的軟件測(cè)試活動(dòng)稱為自動(dòng)化測(cè)試。自動(dòng)化測(cè)試可以方便地進(jìn)行回歸測(cè)試,尤其是在敏捷開發(fā)過(guò)程中,版本快速迭代,自動(dòng)化測(cè)試更具優(yōu)勢(shì)[3-4];自動(dòng)化測(cè)試可以提升效率,減少重復(fù)工作,節(jié)省人力成本,讓測(cè)試人員可以做更多有意義事情,比如探索性測(cè)試[5]等;自動(dòng)化測(cè)試可以保證每次測(cè)試的完整性和一致性,發(fā)現(xiàn)更多隱藏問(wèn)題。

軟件系統(tǒng)中的多種功能維度[6]會(huì)在生產(chǎn)業(yè)務(wù)的推動(dòng)下,演變出各種功能點(diǎn)的組合。自動(dòng)化測(cè)試需要完備的功能測(cè)試用例庫(kù)[7-8],業(yè)界已經(jīng)有大量人員研究測(cè)試用例生成方法[9-11]。

本文第2部分首先分析了手工構(gòu)造測(cè)試用例的基本方法;然后提出了精簡(jiǎn)與自動(dòng)生成測(cè)試用例方法,主要思想是根據(jù)業(yè)務(wù)場(chǎng)景分類業(yè)務(wù)數(shù)據(jù),構(gòu)造功能點(diǎn)組合矩陣,歸并、精簡(jiǎn)業(yè)務(wù)場(chǎng)景之間的功能點(diǎn)組合矩陣,再執(zhí)行生產(chǎn)請(qǐng)求,匹配功能點(diǎn)組合矩陣,自動(dòng)生成測(cè)試用例;最后舉例說(shuō)明精簡(jiǎn)與自動(dòng)生成測(cè)試用例方法。第3部分介紹了精簡(jiǎn)與自動(dòng)生成測(cè)試用例方法的實(shí)際應(yīng)用效果。文章最后對(duì)提出的精簡(jiǎn)與自動(dòng)生成測(cè)試用例方法進(jìn)行了總結(jié)性的討論。

2 測(cè)試用例精簡(jiǎn)與自動(dòng)生成方法

2.1 測(cè)試用例手工構(gòu)造方法

測(cè)試用例包含測(cè)試數(shù)據(jù)、測(cè)試請(qǐng)求、期望結(jié)果。構(gòu)造測(cè)試用例的基本方法如圖1所示。

圖1 手工構(gòu)造測(cè)試用例流程

(1)在完成功能需求分析后,測(cè)試人員根據(jù)功能需求設(shè)計(jì)測(cè)試用例,其中主要是設(shè)計(jì)測(cè)試數(shù)據(jù)、測(cè)試請(qǐng)求以及期望結(jié)果。

(2)測(cè)試人員根據(jù)測(cè)試用例的設(shè)計(jì)文檔,手工構(gòu)造測(cè)試數(shù)據(jù),依據(jù)測(cè)試數(shù)據(jù)構(gòu)造相應(yīng)的測(cè)試請(qǐng)求和期望結(jié)果。

(3)在正式測(cè)試前,需要利用現(xiàn)有的軟件調(diào)試測(cè)試用例,如果返回結(jié)果與期望結(jié)果一致,代表測(cè)試用例正確,可以納入到測(cè)試用例庫(kù)中;如果返回結(jié)果與期望結(jié)果不一致,需要分析測(cè)試用例中的測(cè)試數(shù)據(jù)、測(cè)試請(qǐng)求和期望結(jié)果,判斷哪個(gè)部分錯(cuò)誤,并修正相應(yīng)的內(nèi)容。對(duì)修正后的測(cè)試用例再次執(zhí)行,直到測(cè)試用例正確為止。

上述測(cè)試用例的構(gòu)造過(guò)程全部由人工完成,需要產(chǎn)品、開發(fā)、測(cè)試互相配合,耗費(fèi)人力和時(shí)間成本巨大,而且覆蓋功能點(diǎn)范圍有限。隨著業(yè)務(wù)的飛速發(fā)展,軟件中的多種功能維度會(huì)在實(shí)際業(yè)務(wù)的推動(dòng)下,演變出各種功能的組合,由于開發(fā)和測(cè)試環(huán)節(jié),對(duì)業(yè)務(wù)的敏感度較低,很難快速響應(yīng)業(yè)務(wù)變化,識(shí)別并構(gòu)造出符合實(shí)際業(yè)務(wù)的測(cè)試用例。

2.2 測(cè)試用例精簡(jiǎn)與自動(dòng)生成方法

針對(duì)上述軟件測(cè)試過(guò)程中手工構(gòu)造測(cè)試用例的問(wèn)題,本文提出了一種測(cè)試用例精簡(jiǎn)與自動(dòng)生成方法。將業(yè)務(wù)數(shù)據(jù)按照業(yè)務(wù)場(chǎng)景分類,構(gòu)造功能點(diǎn)組合矩陣,歸并、精簡(jiǎn)業(yè)務(wù)場(chǎng)景之間的功能點(diǎn)組合矩陣,減少冗余的測(cè)試用例,再執(zhí)行生產(chǎn)請(qǐng)求,匹配功能點(diǎn)組合矩陣,自動(dòng)生成測(cè)試用例。從而達(dá)到聚焦核心功能點(diǎn)、提升軟件的代碼測(cè)試覆蓋率,實(shí)現(xiàn)提升軟件質(zhì)量和安全、降低人工成本、提升團(tuán)隊(duì)交付能力的目的。

2.2.1 功能點(diǎn)組合矩陣構(gòu)造

在真實(shí)的生產(chǎn)環(huán)境中,用戶通常會(huì)預(yù)定義一系列的業(yè)務(wù)場(chǎng)景,業(yè)務(wù)場(chǎng)景通過(guò)功能點(diǎn)組合構(gòu)建而成,不同的業(yè)務(wù)場(chǎng)景包含不同的功能點(diǎn)組合。

定義1:功能點(diǎn)組合矩陣。假設(shè)某一業(yè)務(wù)場(chǎng)景包含n個(gè)功能點(diǎn)F={f1、f2、...、fn},任一功能點(diǎn)fi的取值集合記為C(fi),功能點(diǎn)組合矩陣是所有功能點(diǎn)取值集合的笛卡爾積,記為A。

功能點(diǎn)組合矩陣的每一行是n元組n-T=(c1,c2,...,cn),其中每個(gè)元素即為對(duì)應(yīng)功能點(diǎn)的一種取值。功能點(diǎn)組合矩陣A包含n-T的數(shù)量記為|A|。

定義2:標(biāo)簽。一個(gè)軟件會(huì)包括多種業(yè)務(wù)場(chǎng)景,不同的業(yè)務(wù)場(chǎng)景相互獨(dú)立,涉及不同的功能維度,即不同的功能點(diǎn)組合,因此不同的業(yè)務(wù)場(chǎng)景對(duì)應(yīng)不同的功能點(diǎn)組合矩陣。在每種業(yè)務(wù)場(chǎng)景下,用戶發(fā)布一批業(yè)務(wù)數(shù)據(jù),用以描述該業(yè)務(wù)場(chǎng)景的各種適用條件,并通過(guò)一個(gè)或多個(gè)屬性標(biāo)識(shí)出業(yè)務(wù)數(shù)據(jù)所屬的業(yè)務(wù)場(chǎng)景,這些屬性稱為標(biāo)簽D。

本文通過(guò)標(biāo)簽D將業(yè)務(wù)數(shù)據(jù)劃分在不同的業(yè)務(wù)場(chǎng)景下,根據(jù)業(yè)務(wù)場(chǎng)景涉及到的功能點(diǎn)F,提取出業(yè)務(wù)場(chǎng)景的元組T,分析業(yè)務(wù)場(chǎng)景下各功能點(diǎn)的取值集合C,構(gòu)造功能點(diǎn)組合矩陣A。

2.2.2 測(cè)試用例精簡(jiǎn)

定義3:測(cè)試子集,測(cè)試超集。假設(shè)存在2個(gè)業(yè)務(wù)場(chǎng)景的功能點(diǎn)組合矩陣A1和A2,其功能點(diǎn)分別為F1和F2,若

則,A1是A2的測(cè)試子集,A2是A1的測(cè)試超集,記為A2→A1。

定理1:2個(gè)業(yè)務(wù)場(chǎng)景的功能點(diǎn)組合矩陣A1和A2,若A1是A2的測(cè)試子集,則|A1| ≤|A2|。

證明:2個(gè)業(yè)務(wù)場(chǎng)景的功能點(diǎn)組合矩陣A1和A2,其功能點(diǎn)分別為F1和F2,A2→A1。

根據(jù)定義3,F(xiàn)1?F2,|F1|≤|F2|,假設(shè)n1=|F1|,n2=|F2|,n1≤n2;

又根據(jù)定義3,?f∈F1∩F2,C1(f)?C2(f),|C1(f)|≤|C2(f)|;

證畢。

定理2:測(cè)試超集測(cè)試通過(guò),其測(cè)試子集必然測(cè)試通過(guò)。

證明:2個(gè)業(yè)務(wù)場(chǎng)景的功能點(diǎn)組合矩陣A1和A2,其功能點(diǎn)分別為F1和F2,A2→A1。

測(cè)試超集測(cè)試通過(guò),則?f∈F2,功能點(diǎn)f測(cè)試通過(guò)。

假設(shè)測(cè)試子集測(cè)試不通過(guò),則?f∈F1,功能點(diǎn)f測(cè)試不通過(guò)。根據(jù)定義3,f∈F2,功能點(diǎn)f測(cè)試不通過(guò),與前提條件不一致。因此,假設(shè)不成立,測(cè)試子集測(cè)試必然通過(guò)。

證畢。

本文所提測(cè)試用例精簡(jiǎn)方法,主要采用降維和歸并2種策略,具體描述如下:

(1)降維。假設(shè)全業(yè)務(wù)功能點(diǎn)組合矩陣H包含m個(gè)功能點(diǎn)E,將業(yè)務(wù)數(shù)據(jù)按照業(yè)務(wù)場(chǎng)景劃分后,某業(yè)務(wù)場(chǎng)景的功能點(diǎn)組合矩陣A包含n個(gè)功能點(diǎn)F。根據(jù)定義3,業(yè)務(wù)場(chǎng)景的功能點(diǎn)組合矩陣是全業(yè)務(wù)功能點(diǎn)組合矩陣的測(cè)試子集,H→A,F(xiàn)?E,n≤m,根據(jù)定理1,|A|≤|H|。

在軟件中,通常采用關(guān)系型數(shù)據(jù)庫(kù)保存業(yè)務(wù)數(shù)據(jù),所有業(yè)務(wù)場(chǎng)景的業(yè)務(wù)數(shù)據(jù)融合在相同的表空間中,共享相同的數(shù)據(jù)表,因此數(shù)據(jù)表?yè)碛兴袠I(yè)務(wù)場(chǎng)景涉及到的功能點(diǎn)字段。盡管在技術(shù)上按照業(yè)務(wù)類別將功能點(diǎn)字段劃分在不同的表中,可是相對(duì)于某一確定的業(yè)務(wù)場(chǎng)景,仍然會(huì)有多余的功能點(diǎn)字段。通過(guò)劃分業(yè)務(wù)場(chǎng)景,可以避免全功能點(diǎn)組合,在不失測(cè)試完備性的前提下,有效地對(duì)業(yè)務(wù)數(shù)據(jù)降維[12],減少每種業(yè)務(wù)場(chǎng)景的功能點(diǎn)組合矩陣元組數(shù)量,從而精簡(jiǎn)測(cè)試用例[13-15]。

(2)歸并。假設(shè)存在2個(gè)業(yè)務(wù)場(chǎng)景的功能點(diǎn)組合矩陣A1和A2,其功能點(diǎn)分別為F1和F2,A1是A2的測(cè)試子集A2→A1。根據(jù)定義3,F(xiàn)1?F2,根據(jù)定理2,A2測(cè)試通過(guò),A1必然測(cè)試通過(guò)。

軟件中不同的業(yè)務(wù)場(chǎng)景之間存在著相似性,甚至內(nèi)容相同,只是定義的標(biāo)簽不同。如果某個(gè)業(yè)務(wù)場(chǎng)景涉及到的功能點(diǎn)字段包含另一個(gè)業(yè)務(wù)場(chǎng)景涉及到的功能點(diǎn)字段,并且相同功能點(diǎn)字段在該業(yè)務(wù)場(chǎng)景中的取值集合包含在另一個(gè)業(yè)務(wù)場(chǎng)景中的取值集合,只需要測(cè)試該業(yè)務(wù)場(chǎng)景即可。因?yàn)樵摌I(yè)務(wù)場(chǎng)景涉及到的功能點(diǎn)字段更全,取值范圍更廣,囊括了另一個(gè)業(yè)務(wù)場(chǎng)景的各種情況。通過(guò)歸并業(yè)務(wù)場(chǎng)景,可以剔除冗余的業(yè)務(wù)場(chǎng)景,避免重復(fù)測(cè)試,減少冗余的測(cè)試用例,達(dá)到精簡(jiǎn)測(cè)試用例的目的。

2.2.3 測(cè)試用例自動(dòng)生成

本測(cè)試用例自動(dòng)生成方法是侵入式的,需要在現(xiàn)有軟件中打樁,記錄軟件的執(zhí)行路徑,將相關(guān)信息以結(jié)構(gòu)化的形式進(jìn)行存儲(chǔ)。此外本方法還依賴于海量的業(yè)務(wù)數(shù)據(jù)和生產(chǎn)日志,需要在其中篩選出符合業(yè)務(wù)場(chǎng)景測(cè)試需求的用例。下面將介紹該方法的實(shí)現(xiàn)步驟。

輸入:業(yè)務(wù)數(shù)據(jù)

生產(chǎn)日志

輸出:測(cè)試用例集

(1)初始化測(cè)試用例集為空集。

(2)構(gòu)造精簡(jiǎn)的功能點(diǎn)組合矩陣,定義測(cè)試需求。

(3)基于打樁程序框架,在軟件的功能點(diǎn)實(shí)現(xiàn)打樁功能。

(4)執(zhí)行生產(chǎn)日志中的請(qǐng)求,篩選并構(gòu)造測(cè)試用例。

(5)遍歷生產(chǎn)日志。基于打樁后的軟件程序和業(yè)務(wù)數(shù)據(jù),執(zhí)行每一條生產(chǎn)日志請(qǐng)求;打樁程序記錄各個(gè)功能點(diǎn)的執(zhí)行信息,包括功能點(diǎn)的名稱、請(qǐng)求參數(shù)、業(yè)務(wù)數(shù)據(jù)內(nèi)容,以及處理結(jié)果等信息;提取并分析各個(gè)功能點(diǎn)的執(zhí)行信息,識(shí)別執(zhí)行到的功能點(diǎn);匹配測(cè)試需求,如果該生產(chǎn)日志請(qǐng)求的執(zhí)行路徑首次覆蓋到的功能點(diǎn)組合矩陣的某一元組,將此生產(chǎn)日志請(qǐng)求存入測(cè)試用例庫(kù)。

(6)直至滿足測(cè)試需求的完備性,結(jié)束遍歷。本方法采用真實(shí)的業(yè)務(wù)數(shù)據(jù)和生產(chǎn)日志作為輸入。業(yè)務(wù)數(shù)據(jù)是用戶根據(jù)自身的業(yè)務(wù)發(fā)展情況創(chuàng)建的,最能體現(xiàn)用戶的真實(shí)業(yè)務(wù)意圖。而生產(chǎn)日志中的請(qǐng)求是用戶根據(jù)自身的需要發(fā)起的,最能體現(xiàn)用戶的真實(shí)使用意圖。因此,生產(chǎn)日志請(qǐng)求和涉及的業(yè)務(wù)數(shù)據(jù),構(gòu)成了最有價(jià)值的測(cè)試用例。

匹配測(cè)試需求,即匹配功能點(diǎn)組合矩陣。執(zhí)行每個(gè)生產(chǎn)日志請(qǐng)求,將其執(zhí)行的功能點(diǎn)組合與業(yè)務(wù)功能點(diǎn)組合矩陣中的每一元組比較,如果生產(chǎn)日志請(qǐng)求執(zhí)行的功能點(diǎn)組合能夠覆蓋業(yè)務(wù)功能點(diǎn)組合矩陣的某一元組,并且之前沒(méi)有被覆蓋過(guò),則將該生產(chǎn)日志請(qǐng)求納入到測(cè)試用例庫(kù)中,作為測(cè)試請(qǐng)求。

打樁程序框架采用外掛模式,對(duì)每個(gè)功能點(diǎn)增加打樁功能程序,以及打樁開關(guān)選項(xiàng),控制功能點(diǎn)是否執(zhí)行打樁程序。當(dāng)需要采集某個(gè)功能點(diǎn)的執(zhí)行信息時(shí),只需要在配置中動(dòng)態(tài)打開該功能點(diǎn)的打樁開關(guān),便可獲取到相應(yīng)的執(zhí)行信息。打樁程序可以按照軟件系統(tǒng)的功能層次記錄執(zhí)行情況,假設(shè)在功能A中調(diào)用了功能B,則打樁程序的記錄結(jié)果與之對(duì)應(yīng),在執(zhí)行結(jié)果A中包含執(zhí)行結(jié)果B的內(nèi)容。

2.2.4 舉例說(shuō)明

假設(shè)某軟件有5個(gè)功能點(diǎn),劃分為3個(gè)業(yè)務(wù)場(chǎng)景后,各業(yè)務(wù)場(chǎng)景包含的功能點(diǎn)和取值集合如下:

業(yè)務(wù)場(chǎng)景一:

功能點(diǎn)1:{a11,a12,a13};功能點(diǎn)2:{b11,b12};功能點(diǎn)3:{c11,c12};功能點(diǎn)4:{d11}。

業(yè)務(wù)場(chǎng)景二:

功能點(diǎn)1:{a21,a22};功能點(diǎn)4:{d21};功能點(diǎn)5:{e21,e22}。

業(yè)務(wù)場(chǎng)景三:

功能點(diǎn)1:{a11,a13};功能點(diǎn)3:{c11,c12}。

上述3個(gè)業(yè)務(wù)場(chǎng)景對(duì)應(yīng)的功能點(diǎn)組合矩陣見(jiàn)表1—表3。

表1 業(yè)務(wù)場(chǎng)景一功能點(diǎn)組合矩陣

表2 業(yè)務(wù)場(chǎng)景二功能點(diǎn)組合矩陣

表3 業(yè)務(wù)場(chǎng)景三功能點(diǎn)組合矩陣

由定義3,業(yè)務(wù)場(chǎng)景三功能點(diǎn)組合矩陣是業(yè)務(wù)場(chǎng)景一功能點(diǎn)組合矩陣的測(cè)試子集,又由定理2,業(yè)務(wù)場(chǎng)景三功能點(diǎn)組合矩陣可以被精簡(jiǎn)掉。因此,業(yè)務(wù)場(chǎng)景一和業(yè)務(wù)場(chǎng)景二的功能點(diǎn)組合矩陣構(gòu)成了該軟件的測(cè)試需求。

遍歷生產(chǎn)日志中的請(qǐng)求,針對(duì)業(yè)務(wù)場(chǎng)景一,打開功能點(diǎn)1、功能點(diǎn)2、功能點(diǎn)3、功能點(diǎn)4的打樁開關(guān),記錄每個(gè)生產(chǎn)日志請(qǐng)求的執(zhí)行情況。假設(shè)某一生產(chǎn)日志請(qǐng)求執(zhí)行了功能點(diǎn)1、功能點(diǎn)2、功能點(diǎn)3、功能點(diǎn)4,對(duì)應(yīng)的值分別為a11、b11、c11、d11,則覆蓋了該業(yè)務(wù)場(chǎng)景功能點(diǎn)組合矩陣的一個(gè)元組4-T=(a11,b11,c11,d11),如果之前沒(méi)有被覆蓋過(guò),該生產(chǎn)日志請(qǐng)求納入到測(cè)試用例庫(kù)中,為業(yè)務(wù)場(chǎng)景一的一個(gè)測(cè)試用例。以此類推,逐步篩選出符合業(yè)務(wù)場(chǎng)景一的所有功能點(diǎn)組合的生產(chǎn)日志請(qǐng)求,并納入到測(cè)試用例庫(kù)中。當(dāng)業(yè)務(wù)場(chǎng)景一功能點(diǎn)組合矩陣的所有元組被完全覆蓋,則業(yè)務(wù)場(chǎng)景一的測(cè)試需求是測(cè)試完備的。同理,篩選出業(yè)務(wù)場(chǎng)景二的測(cè)試用例。該測(cè)試用例自動(dòng)生成方法的目標(biāo)是篩選出能夠覆蓋功能點(diǎn)組合的生產(chǎn)日志請(qǐng)求,使得所有業(yè)務(wù)場(chǎng)景的測(cè)試需求都是測(cè)試完備的。

3 工程實(shí)驗(yàn)

本實(shí)驗(yàn)以民航運(yùn)價(jià)系統(tǒng)為例,使用生產(chǎn)日志和業(yè)務(wù)數(shù)據(jù)驗(yàn)證本文所提測(cè)試用例精簡(jiǎn)的效果和自動(dòng)生成方法的可行性。

3.1 實(shí)驗(yàn)環(huán)境

民航運(yùn)價(jià)系統(tǒng),每天處理約2 000萬(wàn)筆交易,生成約120 G日志;包含3年的業(yè)務(wù)數(shù)據(jù),近500 G。本實(shí)驗(yàn)使用2022年1月29日交易日期的生產(chǎn)日志和2022年8月25日的業(yè)務(wù)數(shù)據(jù)。系統(tǒng)包含3年的業(yè)務(wù)數(shù)據(jù),即2019年8月26日—2022年8月25日三年的全部數(shù)據(jù)內(nèi)容。

以國(guó)航運(yùn)價(jià)業(yè)務(wù)數(shù)據(jù)為樣本,共涉及323 897條樣本數(shù)據(jù),10個(gè)功能點(diǎn),功能點(diǎn)分別為:去程星期限制、回程星期限制、提前購(gòu)票限制、運(yùn)價(jià)組合限制、團(tuán)隊(duì)人數(shù)限制、團(tuán)隊(duì)拆分限制、缺口程組合限制、往返程組合限制、代碼共享限制、適用代碼共享承運(yùn)人。對(duì)于該樣本數(shù)據(jù),不劃分業(yè)務(wù)場(chǎng)景時(shí),需要155 520個(gè)測(cè)試用例保證測(cè)試完備性。

3.2 實(shí)驗(yàn)結(jié)果

根據(jù)標(biāo)簽,可以將樣本數(shù)據(jù)劃分為207個(gè)業(yè)務(wù)場(chǎng)景,其中最多涉及7個(gè)功能點(diǎn),最少涉及1個(gè)功能點(diǎn),共需要4 421個(gè)測(cè)試用例保證測(cè)試完備性。經(jīng)過(guò)精簡(jiǎn)后,可以歸并為12個(gè)業(yè)務(wù)場(chǎng)景,其中最多涉及7個(gè)功能點(diǎn),最少涉及2個(gè)功能點(diǎn),共需要2 592個(gè)測(cè)試用例保證測(cè)試完備性。

以精簡(jiǎn)后的某一業(yè)務(wù)場(chǎng)景“T/CA3C212619”為例,該業(yè)務(wù)場(chǎng)景涉及到3個(gè)功能點(diǎn),分別為:

提前購(gòu)票限制,取值集合為{[0天999天]、[1天999天]};

代碼共享限制,取值集合為{[0]、[1]};

適用代碼共享承運(yùn)人,取值集合為{[]、[山航/]}。

該業(yè)務(wù)場(chǎng)景生成的功能點(diǎn)組合矩陣包含8個(gè)3維元組,如表4所示。

表4 業(yè)務(wù)場(chǎng)景“T/CA3C212619”功能點(diǎn)組合矩陣

某一生產(chǎn)日志請(qǐng)求執(zhí)行結(jié)果如圖2所示:

圖2 生產(chǎn)日志請(qǐng)求結(jié)果

該日志請(qǐng)求的執(zhí)行結(jié)果覆蓋了業(yè)務(wù)場(chǎng)景“T/CA3C212619”功能點(diǎn)組合矩陣的第3個(gè)元組,可以納入到測(cè)試用例庫(kù)中。

4 結(jié)束語(yǔ)

本文提出了一種測(cè)試用例精簡(jiǎn)與自動(dòng)生成方法。首先,測(cè)試用例精簡(jiǎn)方法通過(guò)劃分業(yè)務(wù)場(chǎng)景降維,通過(guò)歸并業(yè)務(wù)場(chǎng)景減少功能點(diǎn)組合矩陣,解決了測(cè)試需求維度爆炸問(wèn)題,實(shí)驗(yàn)結(jié)果顯示,在保證測(cè)試完備性的前提下,有效地減少了測(cè)試用例的數(shù)量,使得基于路徑覆蓋的測(cè)試具有可行性。再次,測(cè)試用例自動(dòng)生成方法使用生產(chǎn)日志和業(yè)務(wù)數(shù)據(jù),自動(dòng)分析軟件系統(tǒng)的請(qǐng)求以及結(jié)果,抓取測(cè)試用例,大大提升了測(cè)試用例的范圍,以及測(cè)試覆蓋率,并且業(yè)務(wù)數(shù)據(jù)和生產(chǎn)請(qǐng)求更加貼合用戶的真實(shí)業(yè)務(wù)場(chǎng)景,提升了測(cè)試的可靠性,避免了無(wú)效的測(cè)試。雖然本方法使用的打樁技術(shù)是侵入式的,但是可以采用組件掛載技術(shù),通過(guò)配置動(dòng)態(tài)開關(guān),控制是否開啟打樁程序,對(duì)生產(chǎn)系統(tǒng)功能和性能無(wú)影響。綜上,本文所提方法在工程實(shí)踐中具有較大的應(yīng)用價(jià)值。

猜你喜歡
生產(chǎn)功能
也談詩(shī)的“功能”
用舊的生產(chǎn)新的!
“三夏”生產(chǎn) 如火如荼
S-76D在華首架機(jī)實(shí)現(xiàn)生產(chǎn)交付
關(guān)于非首都功能疏解的幾點(diǎn)思考
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡(jiǎn)直”和“幾乎”的表達(dá)功能
安全生產(chǎn)重于泰山
Сварочное Проμзвоσсmво(《焊接生產(chǎn)》)2012年第5期要目
中西醫(yī)結(jié)合治療甲狀腺功能亢進(jìn)癥31例
主站蜘蛛池模板: 国产欧美日韩另类精彩视频| 69国产精品视频免费| 久久婷婷六月| 久久人人爽人人爽人人片aV东京热| 色妞www精品视频一级下载| 中国毛片网| 精品精品国产高清A毛片| 91精品网站| 亚洲中文无码h在线观看 | 1024国产在线| 日韩精品一区二区三区swag| 国产剧情无码视频在线观看| 美女国产在线| 在线视频一区二区三区不卡| 亚洲一级毛片在线观播放| 在线播放91| 亚洲第一成年免费网站| 亚洲六月丁香六月婷婷蜜芽| 亚洲成aⅴ人片在线影院八| 久久综合亚洲鲁鲁九月天| 强乱中文字幕在线播放不卡| 成年A级毛片| 在线免费亚洲无码视频| 久久精品人人做人人| 91小视频在线播放| 婷婷色一区二区三区| 欧美亚洲香蕉| 精品视频一区二区观看| 看国产一级毛片| 欧美成人精品一级在线观看| 国产玖玖玖精品视频| 亚洲精品人成网线在线| 中文字幕亚洲精品2页| 欧美亚洲国产一区| 欧洲成人在线观看| 国产青青操| 久久精品日日躁夜夜躁欧美| 亚洲欧美精品在线| 色悠久久久久久久综合网伊人| 亚洲色图综合在线| 亚洲第一成年网| 欧美日韩中文国产va另类| 中日无码在线观看| 亚洲日韩每日更新| 在线观看亚洲精品福利片| 久久免费视频6| 浮力影院国产第一页| 亚洲中文无码av永久伊人| 天天视频在线91频| 亚洲午夜福利精品无码| 日韩毛片免费| 久久伊人操| 欧美h在线观看| 99久久精品免费观看国产| 日韩在线视频网| 一级不卡毛片| 久久国产成人精品国产成人亚洲| 亚洲国产精品日韩专区AV| 91国内视频在线观看| 国产偷国产偷在线高清| 一本一道波多野结衣一区二区| 亚洲成a∧人片在线观看无码| 日韩黄色精品| 热这里只有精品国产热门精品| 国产麻豆精品手机在线观看| 久久99这里精品8国产| 欧洲熟妇精品视频| 国产综合色在线视频播放线视| www亚洲天堂| 日本免费a视频| 美女潮喷出白浆在线观看视频| 中文字幕1区2区| 午夜激情福利视频| 一本大道东京热无码av | 国产精品亚洲欧美日韩久久| 日韩av高清无码一区二区三区| 国产又色又刺激高潮免费看| 亚洲国产日韩一区| 在线观看无码av免费不卡网站| 亚洲成人网在线播放| 女人毛片a级大学毛片免费| 久久熟女AV|