麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

軟件功能驗(yàn)證方法及裝置與流程

文檔序號(hào):11230336閱讀:496來(lái)源:國(guó)知局
軟件功能驗(yàn)證方法及裝置與流程
本公開(kāi)涉及計(jì)算機(jī)
技術(shù)領(lǐng)域
,尤其涉及一種軟件功能驗(yàn)證方法及裝置。
背景技術(shù)
:軟件功能驗(yàn)證,是指通過(guò)調(diào)用系統(tǒng)提供的服務(wù),校驗(yàn)服務(wù)返回的結(jié)果、系統(tǒng)處理過(guò)程中產(chǎn)生的數(shù)據(jù)等方式,判斷軟件質(zhì)量;當(dāng)前在軟件功能驗(yàn)證過(guò)程中,對(duì)于組件的編排過(guò)程一般采用代碼化的編排方式,即:通過(guò)硬編碼或者xml的方式將編排邏輯以及配置輸入?yún)?shù)固定的寫(xiě)入代碼里。由于組件間的編排邏輯以及每個(gè)輸入?yún)?shù)的配置均固化在代碼中,靈活性大大降低,而且在每次增加用于進(jìn)行軟件功能驗(yàn)證的驗(yàn)證用例時(shí),就會(huì)進(jìn)行系統(tǒng)的釋放,進(jìn)而導(dǎo)致系統(tǒng)各方面的成本增加。技術(shù)實(shí)現(xiàn)要素:為克服相關(guān)技術(shù)中存在的問(wèn)題,本公開(kāi)提供一種軟件功能驗(yàn)證方法及裝置。根據(jù)本公開(kāi)實(shí)施例的第一方面,提供一種軟件功能驗(yàn)證方法,包括:獲取用于進(jìn)行軟件功能驗(yàn)證的驗(yàn)證組件集合中的待執(zhí)行驗(yàn)證組件,所述驗(yàn)證組件集合包含至少一個(gè)按照預(yù)設(shè)順序排列的驗(yàn)證組件,每個(gè)所述驗(yàn)證組件對(duì)應(yīng)一個(gè)軟件功能驗(yàn)證的驗(yàn)證步驟;獲取與所述待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法,以及,組件執(zhí)行方法的輸入?yún)?shù);當(dāng)所述待執(zhí)行驗(yàn)證組件之前存在驗(yàn)證組件時(shí),根據(jù)所述待執(zhí)行驗(yàn)證組件之前的驗(yàn)證組件的輸出參數(shù)值確定所述組件執(zhí)行方法的輸入?yún)?shù)值;在將所述組件執(zhí)行方法的輸入?yún)?shù)替換為輸入?yún)?shù)值后,執(zhí)行所述組件執(zhí)行方法。可選地,所述方法還包括:判斷所述組件執(zhí)行方法是否執(zhí)行完畢;當(dāng)所述組件執(zhí)行方法執(zhí)行完畢后,將所述組件執(zhí)行方法的輸出參數(shù)值確定為驗(yàn)證組件的輸出參數(shù)值并存儲(chǔ)于預(yù)設(shè)模板引擎中。可選地,所述方法還包括:當(dāng)所述待執(zhí)行驗(yàn)證組件之前不存在驗(yàn)證組件時(shí),檢測(cè)是否接收到用戶配置的靜態(tài)參數(shù);當(dāng)接收到用戶配置的靜態(tài)參數(shù)時(shí),將所述靜態(tài)參數(shù)確定為驗(yàn)證組件的輸出參數(shù)值并存儲(chǔ)于預(yù)設(shè)模板引擎中。可選地,所述方法還包括:判斷是否存在待加入所述驗(yàn)證組件集合的待加入驗(yàn)證組件;當(dāng)存在待加入驗(yàn)證組件時(shí),獲取所述待加入驗(yàn)證組件的配置信息,所述配置信息至少包含:組件標(biāo)識(shí)、輸入?yún)?shù)配置表達(dá)式、輸出參數(shù)及在所述預(yù)設(shè)順序中的順序號(hào);將所述待加入驗(yàn)證組件的配置信息存儲(chǔ)到所述驗(yàn)證組件集合的組件集合配置表中。可選地,所述根據(jù)所述待執(zhí)行驗(yàn)證組件之前的驗(yàn)證組件的輸出參數(shù)值確定所述組件執(zhí)行方法的輸入?yún)?shù)值包括:獲取待執(zhí)行驗(yàn)證組件的輸入?yún)?shù)配置表達(dá)式;在預(yù)設(shè)模板引擎中獲取與所述輸入?yún)?shù)配置表達(dá)式對(duì)應(yīng)的驗(yàn)證組件的輸出參數(shù)值;根據(jù)輸入?yún)?shù)配置表達(dá)式及所述輸出參數(shù)值確定所述組件執(zhí)行方法的輸入?yún)?shù)值。可選地,所述組件執(zhí)行方法中至少包含組件執(zhí)行方法標(biāo)識(shí)和至少一個(gè)組件執(zhí)行方法入?yún)?biāo)識(shí);所述獲取與所述待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法,以及,組件執(zhí)行方法的輸入?yún)?shù)包括:查找與待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法標(biāo)識(shí);根據(jù)所述組件執(zhí)行方法標(biāo)識(shí)獲取組件執(zhí)行方法,并獲取所述組件執(zhí)行方法中的組件執(zhí)行方法入?yún)?biāo)識(shí);根據(jù)組件執(zhí)行方法入?yún)?biāo)識(shí)獲取組件執(zhí)行方法的輸入?yún)?shù)。根據(jù)本公開(kāi)實(shí)施例的第二方面,提供一種軟件功能驗(yàn)證裝置,包括:第一獲取模塊,用于獲取用于進(jìn)行軟件功能驗(yàn)證的驗(yàn)證組件集合中的待執(zhí)行驗(yàn)證組件,所述驗(yàn)證組件集合包含至少一個(gè)按照預(yù)設(shè)順序排列的驗(yàn)證組件,每個(gè)所述驗(yàn)證組件對(duì)應(yīng)一個(gè)軟件功能驗(yàn)證的驗(yàn)證步驟;第二獲取模塊,用于獲取與所述待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法,以及,組件執(zhí)行方法的輸入?yún)?shù);第一確定模塊,用于當(dāng)所述待執(zhí)行驗(yàn)證組件之前存在驗(yàn)證組件時(shí),根據(jù)所述待執(zhí)行驗(yàn)證組件之前的驗(yàn)證組件的輸出參數(shù)值確定所述組件執(zhí)行方法的輸入?yún)?shù)值;執(zhí)行模塊,用于在將所述組件執(zhí)行方法的輸入?yún)?shù)替換為輸入?yún)?shù)值后,執(zhí)行所述組 件執(zhí)行方法。可選地,所述裝置還包括:第一判斷模塊,用于判斷所述組件執(zhí)行方法是否執(zhí)行完畢;第二確定模塊,用于當(dāng)所述組件執(zhí)行方法執(zhí)行完畢后,將所述組件執(zhí)行方法的輸出參數(shù)值確定為驗(yàn)證組件的輸出參數(shù)值并存儲(chǔ)于預(yù)設(shè)模板引擎中。可選地,所述裝置還包括:檢測(cè)模塊,用于當(dāng)所述待執(zhí)行驗(yàn)證組件之前不存在驗(yàn)證組件時(shí),檢測(cè)是否接收到用戶配置的靜態(tài)參數(shù);第三確定模塊,用于當(dāng)接收到用戶配置的靜態(tài)參數(shù)時(shí),將所述靜態(tài)參數(shù)確定為驗(yàn)證組件的輸出參數(shù)值并存儲(chǔ)于預(yù)設(shè)模板引擎中。可選地,所述裝置還包括:第二判斷模塊,用于判斷是否存在待加入所述驗(yàn)證組件集合的待加入驗(yàn)證組件;第三獲取模塊,用于當(dāng)存在待加入驗(yàn)證組件時(shí),獲取所述待加入驗(yàn)證組件的配置信息,所述配置信息至少包含:組件標(biāo)識(shí)、輸入?yún)?shù)配置表達(dá)式、輸出參數(shù)在所述預(yù)設(shè)順序中的順序號(hào);存儲(chǔ)模塊,用于將所述待加入驗(yàn)證組件的配置信息存儲(chǔ)到所述驗(yàn)證組件集合的組件集合配置表中。可選地,所述第一確定模塊包括:第一獲取子模塊,用于獲取待執(zhí)行驗(yàn)證組件的輸入?yún)?shù)配置表達(dá)式;第二獲取子模塊,用于在預(yù)設(shè)模板引擎中獲取與所述輸入?yún)?shù)配置表達(dá)式對(duì)應(yīng)的驗(yàn)證組件的輸出參數(shù)值;確定子模塊,用于根據(jù)輸入?yún)?shù)配置表達(dá)式及所述輸出參數(shù)值確定所述組件執(zhí)行方法的輸入?yún)?shù)值。可選地,所述組件執(zhí)行方法中至少包含組件執(zhí)行方法標(biāo)識(shí)和至少一個(gè)組件執(zhí)行方法入?yún)?biāo)識(shí);所述第二獲取模塊包括:查找子模塊,用于查找與待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法標(biāo)識(shí);查找獲取子模塊,用于根據(jù)所述組件執(zhí)行方法標(biāo)識(shí)獲取組件執(zhí)行方法,并獲取所述組件執(zhí)行方法中的組件執(zhí)行方法入?yún)?biāo)識(shí);第三獲取子模塊,用于根據(jù)組件執(zhí)行方法入?yún)?biāo)識(shí)獲取組件執(zhí)行方法的輸入?yún)?shù)。本公開(kāi)的實(shí)施例提供的技術(shù)方案可以包括以下有益效果:本公開(kāi)通過(guò)獲取用于進(jìn)行軟件功能驗(yàn)證的驗(yàn)證組件集合,所述驗(yàn)證組件集合包含至少一個(gè)驗(yàn)證組件,獲取所述驗(yàn)證組件集合中所有驗(yàn)證組件的輸入?yún)?shù)值,以及,與每個(gè)驗(yàn)證組件對(duì)應(yīng)的組件執(zhí)行方法,針對(duì)每個(gè)與驗(yàn)證組件對(duì)應(yīng)的組件執(zhí)行方法,將所述組件執(zhí)行方法中的輸入?yún)?shù)替換為所述驗(yàn)證組件的輸入?yún)?shù)值,可以按照所述驗(yàn)證組件集合中驗(yàn)證組件的順序執(zhí)行所有組件執(zhí)行方法。本公開(kāi)提供的該方法,可以將軟件驗(yàn)證過(guò)程中的每個(gè)步驟組件化,根據(jù)軟件驗(yàn)證功能獲取驗(yàn)證組件集合,通過(guò)對(duì)多個(gè)組件的編排,以及多個(gè)實(shí)現(xiàn)組件間的數(shù)據(jù)傳遞,完成軟件功能驗(yàn)證,組件化的方式提高了驗(yàn)證組件的復(fù)用性。應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本公開(kāi)。附圖說(shuō)明此處的附圖被并入說(shuō)明書(shū)中并構(gòu)成本說(shuō)明書(shū)的一部分,示出了符合本發(fā)明的實(shí)施例,并與說(shuō)明書(shū)一起用于解釋本發(fā)明的原理。圖1是根據(jù)一示例性實(shí)施例示出的一種軟件功能驗(yàn)證方法的一種流程圖;圖2是根據(jù)一示例性實(shí)施例示出的一種軟件功能驗(yàn)證方法的另一種流程圖;圖3是根據(jù)一示例性實(shí)施例示出的一種軟件功能驗(yàn)證方法的另一種流程圖;圖4是根據(jù)一示例性實(shí)施例示出的一種軟件功能驗(yàn)證方法的另一種流程圖;圖5是圖1中步驟s103的流程圖;圖6是圖1中步驟s102的流程圖;圖7是根據(jù)一示例性實(shí)施例示出的一種軟件功能驗(yàn)證裝置的一種結(jié)構(gòu)圖。具體實(shí)施方式這里將詳細(xì)地對(duì)示例性實(shí)施例進(jìn)行說(shuō)明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本發(fā)明相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書(shū)中所詳述的、本發(fā)明的一些方面相一致的裝置和方法的例子。如圖1所示,在本公開(kāi)的一個(gè)實(shí)施例中,提供一種軟件功能驗(yàn)證方法,包括以下步驟。在步驟s101中,獲取用于進(jìn)行軟件功能驗(yàn)證的驗(yàn)證組件集合中的待執(zhí)行驗(yàn)證組件,所述驗(yàn)證組件集合包含至少一個(gè)按照預(yù)設(shè)順序排列的驗(yàn)證組件,每個(gè)所述驗(yàn)證組件對(duì)應(yīng)一個(gè)軟件功能驗(yàn)證的驗(yàn)證步驟。在本公開(kāi)實(shí)施例中,可以首先將軟件功能驗(yàn)證過(guò)程的每個(gè)驗(yàn)證步驟進(jìn)行組件化,每一個(gè)驗(yàn)證步驟形成一個(gè)驗(yàn)證組件,例如,在用于對(duì)銀行卡充值驗(yàn)證的驗(yàn)證過(guò)程中,可以包括以下驗(yàn)證步驟:a.發(fā)起一筆銀行卡充值請(qǐng)求,獲取返回的流水號(hào)id_a;b.調(diào)用業(yè)務(wù)系統(tǒng)的查詢接口獲取與流水號(hào)id_a對(duì)應(yīng)的充值數(shù)據(jù),并校驗(yàn)各字段正確性。返回系統(tǒng)充值數(shù)據(jù)中包含業(yè)務(wù)系統(tǒng)標(biāo)識(shí)id_b等;c.通過(guò)業(yè)務(wù)系統(tǒng)標(biāo)識(shí)id_b,獲取網(wǎng)絡(luò)層充值數(shù)據(jù)信息,并根據(jù)網(wǎng)絡(luò)層充值數(shù)據(jù)信息和系統(tǒng)充值數(shù)據(jù)判斷與銀行數(shù)據(jù)交互的正確性。可以將a、b、c三個(gè)驗(yàn)證步驟組件化形成三個(gè)驗(yàn)證組件a、b、c,這三個(gè)驗(yàn)證組件組成的集合即為驗(yàn)證組件集合,另外,驗(yàn)證組件間可以是相互關(guān)聯(lián)的,例如,驗(yàn)證組件b的輸入?yún)?shù)為驗(yàn)證組件a的輸出參數(shù),驗(yàn)證組件c的輸入?yún)?shù)為驗(yàn)證組件b的輸出參數(shù)等。在該步驟中,可以根據(jù)待進(jìn)行的軟件功能驗(yàn)證獲取對(duì)應(yīng)的驗(yàn)證組件集合,驗(yàn)證組件集合中的所有驗(yàn)證組件可以為進(jìn)行軟件功能驗(yàn)證時(shí)的各個(gè)驗(yàn)證步驟進(jìn)行組件化得到。在步驟s102中,獲取與所述待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法,以及,組件執(zhí)行方法的輸入?yún)?shù)。在本公開(kāi)實(shí)施例中,組件執(zhí)行方法可以通過(guò)特定的注解(annotation)聲明,例如:@componentmethodpubliccomponentresponseexec(@componentparam(key="depositno",desc="充值流水號(hào)",type=componentparamtype.bussiness)stringdepositno){//實(shí)現(xiàn)}其中,@componentmethod為組件執(zhí)行方法標(biāo)識(shí),@componentparam為組件執(zhí)行方法入?yún)?biāo)識(shí),組件執(zhí)行方法的輸入?yún)?shù)包括參數(shù)名(key),參數(shù)描述(desc),以及參數(shù)類型(type)。所述組件執(zhí)行方法中的輸入?yún)?shù)可以為多個(gè),例如,當(dāng)上述組件執(zhí)行方法中含有多個(gè)組件執(zhí)行方法入?yún)?biāo)識(shí)時(shí),可以按照以下方式定義:@componentmethodpubliccomponentresponseexec(@componentparam(key="depositno_1",desc="充值流水號(hào)",type=componentparamtype.bussiness)stringdepositno_1,@componentparam(key="depositno_2",desc="充值流水號(hào),type=componentparamtype.bussiness)stringdepositno_2){//實(shí)現(xiàn)}每個(gè)驗(yàn)證組件在軟件功能驗(yàn)證的過(guò)程中都會(huì)被實(shí)例化使用,例如,上述使用componentparam標(biāo)識(shí)的參數(shù),同樣會(huì)在不同的軟件功能驗(yàn)證的過(guò)程中被實(shí)例化的使用,比如一個(gè)java接口為login(stringusername,stringpassword)。其中的兩個(gè)參數(shù)名為stringusername和stringpassword,當(dāng)username=張三,password=123,則這兩個(gè)參數(shù)被實(shí)例化的引用時(shí),會(huì)利用參數(shù)值張三和123替換掉參數(shù)名。當(dāng)驗(yàn)證組件在軟件功能驗(yàn)證的過(guò)程中被實(shí)例化使用時(shí),會(huì)在數(shù)據(jù)庫(kù)中的組件實(shí)例表及組件參數(shù)表中配置參數(shù)對(duì)應(yīng)的參數(shù)值,組件參數(shù)表中的參數(shù)值可以是靜態(tài)數(shù)據(jù),也可以是動(dòng)態(tài)數(shù)據(jù),其中,靜態(tài)數(shù)據(jù),可以是用戶配置的字符串常量;動(dòng)態(tài)數(shù)據(jù),可以是軟件驗(yàn)證用例傳遞的參數(shù),也可以是之前組件執(zhí)行的結(jié)果。在該步驟中,可以在數(shù)據(jù)庫(kù)中的模板引擎中獲取驗(yàn)證組件的輸入?yún)?shù)值,并根據(jù)每個(gè)驗(yàn)證組件獲取標(biāo)識(shí)有該驗(yàn)證組件標(biāo)識(shí)的組件執(zhí)行方法。在步驟s103中,當(dāng)所述待執(zhí)行驗(yàn)證組件之前存在驗(yàn)證組件時(shí),根據(jù)所述待執(zhí)行驗(yàn)證組件之前的驗(yàn)證組件的輸出參數(shù)值確定所述組件執(zhí)行方法的輸入?yún)?shù)值。在該步驟之前,可以判斷所述待執(zhí)行驗(yàn)證組件之前是否存在驗(yàn)證組件。在該步驟中,驗(yàn)證組件的輸入?yún)?shù)可以使用java的反射機(jī)制獲取組件方法中使用注解componentparam標(biāo)識(shí)的參數(shù)名稱。在步驟s104中,在將所述組件執(zhí)行方法的輸入?yún)?shù)替換為輸入?yún)?shù)值后,執(zhí)行所述組件執(zhí)行方法。在該步驟中,可以獲取驗(yàn)證組件集合中所有驗(yàn)證組件的順序,再按照驗(yàn)證組件的順序執(zhí)行所有組件執(zhí)行方法。本公開(kāi)通過(guò)獲取用于進(jìn)行軟件功能驗(yàn)證的驗(yàn)證組件集合,所述驗(yàn)證組件集合包含至少一個(gè)驗(yàn)證組件,獲取所述驗(yàn)證組件集合中所有驗(yàn)證組件的輸入?yún)?shù)值,以及,與每個(gè)驗(yàn)證 組件對(duì)應(yīng)的組件執(zhí)行方法,針對(duì)每個(gè)與驗(yàn)證組件對(duì)應(yīng)的組件執(zhí)行方法,將所述組件執(zhí)行方法中的輸入?yún)?shù)替換為所述驗(yàn)證組件的輸入?yún)?shù)值,可以按照所述驗(yàn)證組件集合中驗(yàn)證組件的順序執(zhí)行所有組件執(zhí)行方法。本公開(kāi)實(shí)施例提供的該方法,可以將軟件驗(yàn)證過(guò)程中的每個(gè)步驟組件化,根據(jù)軟件驗(yàn)證功能獲取驗(yàn)證組件集合,通過(guò)對(duì)多個(gè)組件的編排,以及多個(gè)實(shí)現(xiàn)組件間的數(shù)據(jù)傳遞,完成軟件功能驗(yàn)證,組件化的方式提高了驗(yàn)證組件的復(fù)用性。如圖2所示,在本公開(kāi)的又一實(shí)施例中,所述方法還包括以下步驟。在步驟s201中,判斷所述組件執(zhí)行方法是否執(zhí)行完畢。在該步驟中,可以通過(guò)判斷是否得到組件執(zhí)行方法的輸出參數(shù)等方式來(lái)判斷所述組件執(zhí)行方法是否執(zhí)行完畢。當(dāng)所述組件執(zhí)行方法執(zhí)行完畢后,在步驟s202中,將所述組件執(zhí)行方法的輸出參數(shù)值確定為驗(yàn)證組件的輸出參數(shù)值并存儲(chǔ)于預(yù)設(shè)模板引擎中。在本公開(kāi)實(shí)施例中,模版引擎是為了使用戶界面與業(yè)務(wù)數(shù)據(jù)內(nèi)容分離而產(chǎn)生的,可以讓網(wǎng)站程序?qū)崿F(xiàn)界面與數(shù)據(jù)分離,常用的模版引擎如velocity、freemarker等。本公開(kāi)通過(guò)判斷所述組件執(zhí)行方法是否執(zhí)行完畢,當(dāng)所述組件執(zhí)行方法執(zhí)行完畢后,可以將所述組件執(zhí)行方法的輸出參數(shù)值確定為驗(yàn)證組件的輸出參數(shù)值并存儲(chǔ)于預(yù)設(shè)模板引擎中。本公開(kāi)實(shí)施例提供的該方法,能夠自動(dòng)將每個(gè)組件執(zhí)行方法的輸出參數(shù)值進(jìn)行存儲(chǔ),以供下一個(gè)驗(yàn)證組件進(jìn)行使用。如圖3所示,在本公開(kāi)的又一個(gè)實(shí)施例中,所述方法還包括以下步驟。當(dāng)所述待執(zhí)行驗(yàn)證組件之前不存在驗(yàn)證組件時(shí),在步驟s301中,檢測(cè)是否接收到用戶配置的靜態(tài)參數(shù)。當(dāng)接收到用戶配置的靜態(tài)參數(shù)時(shí),在步驟s302中,將所述靜態(tài)參數(shù)確定為驗(yàn)證組件的輸出參數(shù)值并存儲(chǔ)于預(yù)設(shè)模板引擎中。本公開(kāi)通過(guò)當(dāng)所述待執(zhí)行驗(yàn)證組件之前不存在驗(yàn)證組件時(shí),檢測(cè)是否接收到用戶配置的靜態(tài)參數(shù),當(dāng)接收到用戶配置的靜態(tài)參數(shù)時(shí),可以將所述靜態(tài)參數(shù)確定為驗(yàn)證組件的輸出參數(shù)值并存儲(chǔ)于預(yù)設(shè)模板引擎中。本公開(kāi)實(shí)施例提供的該方法,能夠在待執(zhí)行組件為驗(yàn)證組件集合中的第一個(gè)驗(yàn)證組件時(shí),由于待執(zhí)行組件之前并不存在上一個(gè)驗(yàn)證組件,所以可以通過(guò)用戶配置的方式得到輸入?yún)?shù)。如圖4所示,在本公開(kāi)的有一個(gè)實(shí)施例中,所述方法還包括以下步驟。在步驟s401中,判斷是否存在待加入所述驗(yàn)證組件集合的待加入驗(yàn)證組件。在該步驟中,可以根據(jù)需要進(jìn)行的軟件功能驗(yàn)證選擇加入驗(yàn)證組件集合中的驗(yàn)證組件,例如,當(dāng)現(xiàn)在有五個(gè)驗(yàn)證組件a、b、c、d和e,如果首先已獲取到用于實(shí)現(xiàn)軟件功能驗(yàn)證的一個(gè)驗(yàn)證組件a并加入驗(yàn)證組件集合中,則可以將使用驗(yàn)證組件a的輸出參數(shù)的驗(yàn)證組件b也加入到驗(yàn)證組件集合中,同理,驗(yàn)證組件c也可以加入到驗(yàn)證組件集合中。當(dāng)存在待加入驗(yàn)證組件時(shí),在步驟s402中,獲取所述待加入驗(yàn)證組件的配置信息。在本公開(kāi)實(shí)施例中,所述配置信息至少包含:組件標(biāo)識(shí)、輸入?yún)?shù)配置表達(dá)式、輸出參數(shù)及在所述預(yù)設(shè)順序中的順序號(hào),例如,組件1和組件2的輸入?yún)?shù)配置表達(dá)式、輸出參數(shù)及在所述驗(yàn)證組件集合中預(yù)設(shè)順序的順序號(hào)按照下表所示:表1組件標(biāo)識(shí)輸入?yún)?shù)配置表達(dá)式輸出參數(shù)順序號(hào)組件1instid=$instcompnentresult_11組件2serialno=$compnentresult_1.idcompnentresult_22每個(gè)組件的執(zhí)行結(jié)果均以key,value的形式保存到模版引擎上下文中,組件的輸出參數(shù)即為key值,組件的執(zhí)行結(jié)果為value值,例如,當(dāng)組件1的執(zhí)行結(jié)果為123時(shí),compnentresult_1可以為key值,123可以為value值,key值可以作為后續(xù)組件使用該組件執(zhí)行結(jié)果的依據(jù)。在步驟s403中,將所述待加入驗(yàn)證組件的配置信息存儲(chǔ)到所述驗(yàn)證組件集合的組件集合配置表中。在本公開(kāi)實(shí)施例中,可以首先創(chuàng)建一個(gè)組件集合配置表,并產(chǎn)生一條配置主記錄,當(dāng)需要將待加入驗(yàn)證組件加入到驗(yàn)證組件集合中時(shí),可以將待加入驗(yàn)證組件與配置主記錄建立關(guān)聯(lián),并將待加入驗(yàn)證組件的配置信息存儲(chǔ)到組件集合配置表中。本公開(kāi)通過(guò)判斷是否存在待加入所述驗(yàn)證組件集合的待加入驗(yàn)證組件,當(dāng)存在待加入驗(yàn)證組件時(shí),獲取所述待加入驗(yàn)證組件的配置信息,可以將所述待加入驗(yàn)證組件加入到所述驗(yàn)證組件集合中,并將所述配置信息存儲(chǔ)于所述組件集合配置表中。本公開(kāi)實(shí)施例提供的該方法能夠自動(dòng)將組成驗(yàn)證組件集合的多個(gè)驗(yàn)證組件組合起來(lái),并且根據(jù)每個(gè)組件的情況將組件的配置信息進(jìn)行存儲(chǔ),便于在執(zhí)行驗(yàn)證組件集合時(shí)按照建立的關(guān)聯(lián)關(guān)系及配置信息執(zhí)行各個(gè)組件。如圖5所示,在本公開(kāi)的又一實(shí)施例中,所述步驟s103包括以下步驟。在步驟s501中,獲取待執(zhí)行驗(yàn)證組件的輸入?yún)?shù)配置表達(dá)式。在本公開(kāi)實(shí)施例中,輸入?yún)?shù)配置表達(dá)式可以為確定驗(yàn)證組件的輸入?yún)?shù)的依據(jù),例如,在計(jì)算組件1的輸入?yún)?shù)時(shí),instid=$inst為一個(gè)輸入?yún)?shù)配置表達(dá)式,在計(jì)算組件2的輸入?yún)?shù)時(shí),serialno=$compnentresult_1.id為一個(gè)輸入?yún)?shù)配置表達(dá)式。在步驟s502中,在預(yù)設(shè)模板引擎中獲取與所述輸入?yún)?shù)配置表達(dá)式對(duì)應(yīng)的驗(yàn)證組件的輸出參數(shù)值。在實(shí)際應(yīng)用中,與所述輸入?yún)?shù)配置表達(dá)式對(duì)應(yīng)的驗(yàn)證組件的輸出參數(shù)值可以為用戶配置的靜態(tài)參數(shù),也可以為之前的驗(yàn)證組件的輸出參數(shù)值,假設(shè)用戶配置的靜態(tài)參數(shù)為inst=abc,則可以獲取用戶配置的靜態(tài)參數(shù)inst=abc作為驗(yàn)證組件的輸出參數(shù)值;由于組件2的輸入?yún)?shù)是根據(jù)組件1的輸出參數(shù)確定的,這時(shí)可以獲取組件1的輸出參數(shù)compnentresult_1。在步驟s503中,根據(jù)輸入?yún)?shù)配置表達(dá)式及所述輸出參數(shù)值確定所述組件執(zhí)行方法的輸入?yún)?shù)值。在實(shí)際應(yīng)用中,在計(jì)算組件1的輸入?yún)?shù)值時(shí),可以將輸入?yún)?shù)配置表達(dá)式中等號(hào)右邊的inst用abc進(jìn)行替換,則instid=abc;在計(jì)算組件2的輸入?yún)?shù)值時(shí),假設(shè)id=123456時(shí),因?yàn)閏ompnentresult_1是個(gè)java復(fù)雜對(duì)象,使用$compnentresult_1.id模版表達(dá)式可以取出其中變量id的值,因此替換后,組件2的輸入?yún)?shù)serialno=123456。本公開(kāi)通過(guò)獲取待執(zhí)行驗(yàn)證組件的輸入?yún)?shù)配置表達(dá)式,在預(yù)設(shè)模板引擎中獲取與所述輸入?yún)?shù)配置表達(dá)式對(duì)應(yīng)的驗(yàn)證組件的輸出參數(shù)值,可以根據(jù)輸入?yún)?shù)配置表達(dá)式及所述輸出參數(shù)值確定所述組件執(zhí)行方法的輸入?yún)?shù)值。本公開(kāi)實(shí)施例提供的該方法,能夠根據(jù)用戶配置的靜態(tài)參數(shù)或者待執(zhí)行驗(yàn)證組件之前的驗(yàn)證組件的輸出參數(shù)值自動(dòng)確定待執(zhí)行組件的輸入?yún)?shù)值,方法簡(jiǎn)單、高效。如圖6所示,在本公開(kāi)的又一實(shí)施例中,所述組件執(zhí)行方法中至少包含組件執(zhí)行方法標(biāo)識(shí)和至少一個(gè)組件執(zhí)行方法入?yún)?biāo)識(shí)。所述步驟s102包括以下步驟。在步驟s601中,查找與待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法標(biāo)識(shí)。在該步驟中,可以通過(guò)反射機(jī)制查找與待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法標(biāo)識(shí)。在步驟s602中,根據(jù)所述組件執(zhí)行方法標(biāo)識(shí)獲取組件執(zhí)行方法,并獲取所述組件執(zhí)行方法中的組件執(zhí)行方法入?yún)?biāo)識(shí)。在本公開(kāi)實(shí)施例中,可以通過(guò)反射機(jī)制獲取組件執(zhí)行方法,也可以通過(guò)反射機(jī)制在組 件執(zhí)行方法中查找與待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法標(biāo)識(shí)。在步驟s603中,根據(jù)組件執(zhí)行方法入?yún)?biāo)識(shí)獲取組件執(zhí)行方法的輸入?yún)?shù)。可以通過(guò)反射機(jī)制獲取組件執(zhí)行方法的輸入?yún)?shù)。本公開(kāi)通過(guò)查找與待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法標(biāo)識(shí),可以根據(jù)所述組件執(zhí)行方法標(biāo)識(shí)獲取組件執(zhí)行方法,并獲取所述組件執(zhí)行方法中的組件執(zhí)行方法入?yún)?biāo)識(shí),可以根據(jù)組件執(zhí)行方法入?yún)?biāo)識(shí)獲取組件執(zhí)行方法的輸入?yún)?shù)。本公開(kāi)實(shí)施例提供的該方法,能夠自動(dòng)查找及獲取組件執(zhí)行方法及組件執(zhí)行方法的輸入?yún)?shù),便于進(jìn)行組件間的數(shù)據(jù)傳遞。如圖7所示,在本公開(kāi)的又一實(shí)施例中,提供一種軟件功能驗(yàn)證裝置,包括:第一獲取模塊701、第二獲取模塊702、第一確定模塊703和執(zhí)行模塊704。第一獲取模塊701,用于獲取用于進(jìn)行軟件功能驗(yàn)證的驗(yàn)證組件集合中的待執(zhí)行驗(yàn)證組件,所述驗(yàn)證組件集合包含至少一個(gè)按照預(yù)設(shè)順序排列的驗(yàn)證組件,每個(gè)所述驗(yàn)證組件對(duì)應(yīng)一個(gè)軟件功能驗(yàn)證的驗(yàn)證步驟。第二獲取模塊702,用于獲取與所述待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法,以及,組件執(zhí)行方法的輸入?yún)?shù)。第一確定模塊703,用于當(dāng)所述待執(zhí)行驗(yàn)證組件之前存在驗(yàn)證組件時(shí),根據(jù)所述待執(zhí)行驗(yàn)證組件之前的驗(yàn)證組件的輸出參數(shù)值確定所述組件執(zhí)行方法的輸入?yún)?shù)值。執(zhí)行模塊704,用于在將所述組件執(zhí)行方法的輸入?yún)?shù)替換為輸入?yún)?shù)值后,執(zhí)行所述組件執(zhí)行方法。在本公開(kāi)的又一實(shí)施例中,所述裝置還包括:第一判斷模塊和第二確定模塊。第一判斷模塊,用于判斷所述組件執(zhí)行方法是否執(zhí)行完畢。第二確定模塊,用于當(dāng)所述組件執(zhí)行方法執(zhí)行完畢后,將所述組件執(zhí)行方法的輸出參數(shù)值確定為驗(yàn)證組件的輸出參數(shù)值并存儲(chǔ)于預(yù)設(shè)模板引擎中。在本公開(kāi)的又一實(shí)施例中,所述裝置還包括:檢測(cè)模塊和第三確定模塊。檢測(cè)模塊,用于當(dāng)所述待執(zhí)行驗(yàn)證組件之前不存在驗(yàn)證組件時(shí),檢測(cè)是否接收到用戶配置的靜態(tài)參數(shù)。第三確定模塊,用于當(dāng)接收到用戶配置的靜態(tài)參數(shù)時(shí),將所述靜態(tài)參數(shù)確定為驗(yàn)證組件的輸出參數(shù)值并存儲(chǔ)于預(yù)設(shè)模板引擎中。在本公開(kāi)的又一實(shí)施例中,所述裝置還包括:第二判斷模塊、第三獲取模塊和加入存 儲(chǔ)模塊。第二判斷模塊,用于判斷是否存在待加入所述驗(yàn)證組件集合的待加入驗(yàn)證組件。第三獲取模塊,用于當(dāng)存在待加入驗(yàn)證組件時(shí),獲取所述待加入驗(yàn)證組件的配置信息,所述配置信息至少包含:組件標(biāo)識(shí)、輸入?yún)?shù)配置表達(dá)式、輸出參數(shù)及在所述預(yù)設(shè)順序中的順序號(hào)。存儲(chǔ)模塊,用于將所述待加入驗(yàn)證組件的配置信息存儲(chǔ)到所述驗(yàn)證組件集合的組件集合配置表中。在本公開(kāi)的又一實(shí)施例中,所述第一確定模塊包括:第一獲取子模塊、第二獲取子模塊和確定子模塊。第一獲取子模塊,用于獲取待執(zhí)行驗(yàn)證組件的輸入?yún)?shù)配置表達(dá)式。第二獲取子模塊,用于在預(yù)設(shè)模板引擎中獲取與所述輸入?yún)?shù)配置表達(dá)式對(duì)應(yīng)的驗(yàn)證組件的輸出參數(shù)值。確定子模塊,用于根據(jù)輸入?yún)?shù)配置表達(dá)式及所述輸出參數(shù)值確定所述組件執(zhí)行方法的輸入?yún)?shù)值。在本公開(kāi)的又一實(shí)施例中,所述組件執(zhí)行方法中至少包含組件執(zhí)行方法標(biāo)識(shí)和至少一個(gè)組件執(zhí)行方法入?yún)?biāo)識(shí)。所述第二獲取模塊包括:查找子模塊、查找獲取子模塊和第三獲取子模塊。查找子模塊,用于查找與待執(zhí)行組件對(duì)應(yīng)的組件執(zhí)行方法標(biāo)識(shí)。查找獲取子模塊,用于根據(jù)所述組件執(zhí)行方法標(biāo)識(shí)獲取組件執(zhí)行方法,并獲取所述組件執(zhí)行方法中的組件執(zhí)行方法入?yún)?biāo)識(shí)。第三獲取子模塊,用于根據(jù)組件執(zhí)行方法入?yún)?biāo)識(shí)獲取組件執(zhí)行方法的輸入?yún)?shù)。本領(lǐng)域技術(shù)人員在考慮說(shuō)明書(shū)及實(shí)踐這里公開(kāi)的發(fā)明后,將容易想到本發(fā)明的其它實(shí)施方案。本申請(qǐng)旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本公開(kāi)未公開(kāi)的本
技術(shù)領(lǐng)域
中的公知常識(shí)或慣用技術(shù)手段。說(shuō)明書(shū)和實(shí)施例僅被視為示例性的,本發(fā)明的真正范圍和精神由所附的權(quán)利要求指出。應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來(lái)限制。當(dāng)前第1頁(yè)12
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
主站蜘蛛池模板: 渭源县| 罗定市| 开江县| 三河市| 新沂市| 抚松县| 石台县| 报价| 郴州市| 沙河市| 师宗县| 黄浦区| 绥滨县| 蕉岭县| 灵丘县| 宁陵县| 永胜县| 汾阳市| 信阳市| 绥宁县| 镇巴县| 赣榆县| 株洲市| 峨眉山市| 锡林浩特市| 彝良县| 来凤县| 西乡县| 临夏县| 宁南县| 怀柔区| 海林市| 磐安县| 垣曲县| 景宁| 曲周县| 塔河县| 樟树市| 合山市| 怀化市| 偃师市|