本發(fā)明涉及標(biāo)準(zhǔn)符合性測(cè)試領(lǐng)域,更具體地,涉及一種面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試方法及測(cè)試系統(tǒng)。
背景技術(shù):
在軟件產(chǎn)業(yè)繁榮發(fā)展,百家爭(zhēng)鳴的時(shí)代,開(kāi)展軟件標(biāo)準(zhǔn)符合性測(cè)試的必要性已經(jīng)成為行業(yè)共識(shí)。中國(guó)的軟件標(biāo)準(zhǔn)符合性測(cè)試工作研究起步較晚,資料顯示,自八五系統(tǒng)軟件國(guó)產(chǎn)化重大攻關(guān)項(xiàng)目才開(kāi)始開(kāi)展軟件標(biāo)準(zhǔn)符合性測(cè)試的研究工作。而標(biāo)準(zhǔn)符合性測(cè)試不同于一般的軟件測(cè)試,其測(cè)試依據(jù)來(lái)自于有針對(duì)性的標(biāo)準(zhǔn),測(cè)試工具的開(kāi)發(fā)往往是由具有標(biāo)準(zhǔn)管理或起草資質(zhì)的政府單位委托,所以標(biāo)準(zhǔn)符合性測(cè)試工具不同于其他軟件產(chǎn)品,在國(guó)內(nèi)沒(méi)有普遍適用的市場(chǎng)化產(chǎn)品。
而且由于數(shù)字出版因其自身的行業(yè)特性,對(duì)格式、版式、業(yè)務(wù)流程要求更為嚴(yán)格,因此開(kāi)發(fā)服務(wù)于其業(yè)務(wù)的軟件的數(shù)據(jù)輸出、接口定義也具有一定的復(fù)雜性和多樣性。面向數(shù)字出版領(lǐng)域的一系列工程技術(shù)工具由不同單位開(kāi)發(fā),各單位由于開(kāi)發(fā)語(yǔ)言、數(shù)據(jù)庫(kù)調(diào)用方式,接口格式、運(yùn)行平臺(tái)不同,很容易出現(xiàn)各自開(kāi)發(fā)的軟件工具或系統(tǒng)在集成時(shí)出現(xiàn)困難。
技術(shù)實(shí)現(xiàn)要素:
為了解決現(xiàn)有技術(shù)中的上述問(wèn)題,即為了解決各自開(kāi)發(fā)的軟件工具或系統(tǒng)在集成時(shí)出現(xiàn)困難,本發(fā)明提供了一種面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試方法及測(cè)試系統(tǒng)。
為實(shí)現(xiàn)上述目的,本發(fā)明提供了如下方案:
一種面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試方法,其特征在于,所述測(cè)試方法包括:
根據(jù)測(cè)試對(duì)象選擇需要遵循的標(biāo)準(zhǔn),并確定對(duì)應(yīng)的測(cè)試需求,并對(duì)測(cè)試對(duì)象進(jìn)行注冊(cè),生成注冊(cè)信息;其中,所述測(cè)試對(duì)象包括測(cè)試接口和/或測(cè)試數(shù)據(jù);
根據(jù)所述測(cè)試需求制定測(cè)試計(jì)劃;
根據(jù)所述測(cè)試對(duì)象下載對(duì)應(yīng)的測(cè)試工具,其中,所述測(cè)試工具包括接口類標(biāo)準(zhǔn)符合性測(cè)試工具和/或數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具;
根據(jù)所述測(cè)試工具及所述測(cè)試計(jì)劃對(duì)所述測(cè)試對(duì)象進(jìn)行標(biāo)準(zhǔn)符合性的測(cè)試;
將標(biāo)準(zhǔn)符合性測(cè)試的測(cè)試結(jié)果生成測(cè)試報(bào)告。
可選的,所述生成注冊(cè)信息包括:
獲得接口描述,并根據(jù)所述接口描述,批量生成全覆蓋測(cè)試用例;和/或獲得測(cè)試數(shù)據(jù)的測(cè)試信息。
可選的,所述接口描述包括:獲取接口描述的XML文檔,解析XML文檔中保存的接口描述信息并存入數(shù)據(jù)庫(kù),或者在網(wǎng)頁(yè)表單直接填寫(xiě)接口描述信息并存入數(shù)據(jù)庫(kù)。
可選的,所述批量生成全覆蓋測(cè)試用例的方法包括:
S11:連接數(shù)據(jù)庫(kù),調(diào)取所述數(shù)據(jù)庫(kù)的參數(shù)表;
S12:根據(jù)所述接口描述,從所述參數(shù)表獲取對(duì)應(yīng)接口描述的各參數(shù)的相關(guān)信息,各所述參數(shù)的相關(guān)信息包括參數(shù)的數(shù)據(jù)類型、約束信息、測(cè)試用例類型以及測(cè)試值;
S13:判斷所述測(cè)試值是否為空,如果是,則根據(jù)參數(shù)的數(shù)據(jù)類型、約束信息以及測(cè)試用例類型,為接口的每個(gè)參數(shù)生成各種測(cè)試用例類型的測(cè)試值;否則直接使用對(duì)應(yīng)的數(shù)值作為測(cè)試值,執(zhí)行下一步;
S14:根據(jù)不同參數(shù)的測(cè)試值以及對(duì)應(yīng)的測(cè)試用例類型生成x的n次方條測(cè)試用例;其中,n表示為參數(shù)的個(gè)數(shù),x表示每個(gè)參數(shù)的測(cè)試值對(duì)應(yīng)的測(cè)試用例類型的種類;
S15:將全部測(cè)試用例序列化為XM格式輸出。
可選的,各所述測(cè)試用例包括測(cè)試用例值及用例標(biāo)識(shí);
其中,所述測(cè)試用例值為對(duì)應(yīng)接口的各參數(shù)的測(cè)試值的組合;所述用例標(biāo)識(shí)用n位x進(jìn)制數(shù)表示,用例標(biāo)識(shí)的第j位所表示所述接口第j個(gè)參數(shù)的測(cè)試用例類型。
可選的,所述數(shù)據(jù)類型包括數(shù)值型、字符串型和時(shí)間型中至少一者。
可選的,所述測(cè)試用例類型包括有效隨機(jī)測(cè)試用例(用0表示)、無(wú)效隨機(jī)測(cè)試用例(用1表示)、左邊界值類型(用2表示)、及右邊界值類型(用3表示)。
可選的,(1)對(duì)于數(shù)值型,所述為接口的每個(gè)參數(shù)生成各種測(cè)試用例類型的測(cè)試值包括:
隨機(jī)生成在最小值和最大值范圍內(nèi)的相應(yīng)數(shù)值類型的隨機(jī)數(shù)作為有效隨機(jī)測(cè)試值、最小值作為左邊界值、最大值作為右邊界值;
隨機(jī)生成一個(gè)相應(yīng)數(shù)值類型的數(shù)值r1,再隨機(jī)取(最小值-r1)或者(最大值+r1)的值作為無(wú)效隨機(jī)測(cè)試值;其中,r1>0;
(2)對(duì)于字符串型,所述為接口的每個(gè)參數(shù)生成各種測(cè)試用例類型的測(cè)試值包括:
隨機(jī)生成在最小長(zhǎng)度和最大長(zhǎng)度范圍內(nèi)的整型隨機(jī)數(shù)值l,所述整型隨機(jī)數(shù)值l作為待生成的字符串的長(zhǎng)度,隨機(jī)生成長(zhǎng)度為l的字符串作為有效隨機(jī)測(cè)試值;
用最小長(zhǎng)度作為待生成的字符串的長(zhǎng)度,隨機(jī)生成該長(zhǎng)度的字符串作為左邊界值;
用最大長(zhǎng)度作為待生成的字符串的長(zhǎng)度,隨機(jī)生成該長(zhǎng)度的字符串作為右邊界值;
隨機(jī)生成一個(gè)整型的數(shù)值r2,再隨機(jī)取(最小長(zhǎng)度-r2)或者(最大長(zhǎng)度+r2)的值作為待生成的字符串的長(zhǎng)度,隨機(jī)生成該長(zhǎng)度的字符串作為無(wú)效隨機(jī)測(cè)試值;其中,0<r2<最小長(zhǎng)度;
(3)對(duì)于時(shí)間型,所述為接口的每個(gè)參數(shù)生成各種測(cè)試用例類型的測(cè)試值包括:
根據(jù)時(shí)間格式將開(kāi)始時(shí)間和截止時(shí)間轉(zhuǎn)化為長(zhǎng)整型的毫秒數(shù);
隨機(jī)生成在開(kāi)始時(shí)間和截止時(shí)間范圍內(nèi)的長(zhǎng)整型隨機(jī)數(shù),再將所述長(zhǎng)整型隨機(jī)數(shù)轉(zhuǎn)化為符合時(shí)間格式的時(shí)間作為有效隨機(jī)測(cè)試值;
開(kāi)始時(shí)間作為左邊界值;
截止時(shí)間作為右邊界值;
隨機(jī)生成一個(gè)長(zhǎng)整型的數(shù)值r3,再隨機(jī)取(開(kāi)始時(shí)間-r3)或者(截止時(shí)間+r3)的值,并將該值轉(zhuǎn)化為符合時(shí)間格式的時(shí)間作為無(wú)效隨機(jī)測(cè)試值;其中,0<r3<開(kāi)始時(shí)間。
可選的,所述對(duì)所述測(cè)試對(duì)象進(jìn)行標(biāo)準(zhǔn)符合性的測(cè)試包括:
S411:根據(jù)所述測(cè)試計(jì)劃選擇待測(cè)項(xiàng)目;
S412:從所述待測(cè)項(xiàng)目的測(cè)試用例中選擇需要進(jìn)行測(cè)試的接口測(cè)試用例;
S413:所述接口類標(biāo)準(zhǔn)符合性測(cè)試工具按順序讀取全部的接口測(cè)試用例以及對(duì)應(yīng)的預(yù)期結(jié)果;
S414:將所述接口測(cè)試用例中的測(cè)試輸入作為接口的輸入?yún)?shù),調(diào)用測(cè)試接口提供或開(kāi)放的外部接口,進(jìn)行接口調(diào)用測(cè)試;
S415:比較接口調(diào)用測(cè)試的結(jié)果與所述接口測(cè)試用例對(duì)應(yīng)的預(yù)期結(jié)果,確定接口測(cè)試用例的測(cè)試結(jié)果。
可選的,所述對(duì)所述測(cè)試對(duì)象進(jìn)行標(biāo)準(zhǔn)符合性的測(cè)試包括:
S421:根據(jù)測(cè)試數(shù)據(jù)及測(cè)試計(jì)劃,將XML Schema文件以及測(cè)試數(shù)據(jù)加載到所述數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具上;
S422:通過(guò)所述數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具驗(yàn)證所述測(cè)試數(shù)據(jù)的格式,命名、打包方式、存儲(chǔ)結(jié)構(gòu)以及測(cè)試數(shù)據(jù)中的各個(gè)文件命名及內(nèi)容,還有文件中各數(shù)據(jù)項(xiàng)的數(shù)據(jù)類型及格式與標(biāo)準(zhǔn)規(guī)定的符合程度;
S423:確定測(cè)試結(jié)果。
根據(jù)本發(fā)明的實(shí)施例,本發(fā)明公開(kāi)了以下技術(shù)效果:
本發(fā)明面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試方法根據(jù)測(cè)試方的測(cè)試需求、遵循標(biāo)準(zhǔn)制定統(tǒng)一的測(cè)試計(jì)劃,并下載測(cè)試工具,根據(jù)測(cè)試工具及測(cè)試計(jì)劃對(duì)測(cè)試對(duì)象進(jìn)行標(biāo)準(zhǔn)符合性的測(cè)試,生成統(tǒng)一的測(cè)試報(bào)告,從而確保在系統(tǒng)總集前數(shù)據(jù)輸出一致,有助于盡可能地降低各個(gè)軟件系統(tǒng)的接口錯(cuò)誤率,提高總集工作效率,確保復(fù)合出版系統(tǒng)工程研發(fā)的數(shù)據(jù)、軟件、系統(tǒng)與對(duì)應(yīng)標(biāo)準(zhǔn)的符合性,同時(shí)有助于檢驗(yàn)標(biāo)準(zhǔn)在工程中的實(shí)用性,保障國(guó)家復(fù)合出版系統(tǒng)工程的標(biāo)準(zhǔn)化和規(guī)范化。
為實(shí)現(xiàn)上述目的,本發(fā)明提供了如下方案:
一種面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試系統(tǒng),所述測(cè)試系統(tǒng)包括:
標(biāo)準(zhǔn)管理模塊,用于被測(cè)方根據(jù)測(cè)試對(duì)象選擇需要遵循的標(biāo)準(zhǔn),并確定對(duì)應(yīng)的測(cè)試需求,并對(duì)測(cè)試對(duì)象進(jìn)行注冊(cè),生成注冊(cè)信息;其中,所述測(cè)試對(duì)象包括測(cè)試接口和/或測(cè)試數(shù)據(jù);
制定模塊,用于根據(jù)所述測(cè)試需求制定測(cè)試計(jì)劃;
下載模塊,用于根據(jù)所述測(cè)試對(duì)象下載對(duì)應(yīng)的測(cè)試工具,其中,所述測(cè)試工具包括接口類標(biāo)準(zhǔn)符合性測(cè)試工具和/或數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具;
測(cè)試模塊,用于根據(jù)所述測(cè)試工具及所述測(cè)試計(jì)劃對(duì)所述測(cè)試對(duì)象進(jìn)行標(biāo)準(zhǔn)符合性的測(cè)試;
生成模塊,用于將標(biāo)準(zhǔn)符合性測(cè)試的測(cè)試結(jié)果生成測(cè)試報(bào)告。
可選的,所述標(biāo)準(zhǔn)管理模塊由被測(cè)方參與執(zhí)行;所述制定模塊、下載模塊、測(cè)試模塊及生成模塊由測(cè)試方參與執(zhí)行。
根據(jù)本發(fā)明的實(shí)施例,本發(fā)明公開(kāi)了以下技術(shù)效果:
本發(fā)明面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試系統(tǒng)通過(guò)設(shè)置標(biāo)準(zhǔn)管理模塊、制定模塊、下載模塊、測(cè)試模塊及生成模塊,能夠根據(jù)測(cè)試需求遵循標(biāo)準(zhǔn)制定統(tǒng)一的測(cè)試計(jì)劃,并下載測(cè)試工具,根據(jù)測(cè)試工具及測(cè)試計(jì)劃對(duì)測(cè)試對(duì)象進(jìn)行標(biāo)準(zhǔn)符合性的測(cè)試,生成統(tǒng)一的測(cè)試報(bào)告,從而確保在系統(tǒng)總集前數(shù)據(jù)輸出一致,有助于盡可能地降低各個(gè)軟件系統(tǒng)的接口錯(cuò)誤率,提高總集工作效率,確保復(fù)合出版系統(tǒng)工程研發(fā)的數(shù)據(jù)、軟件、系統(tǒng)與對(duì)應(yīng)標(biāo)準(zhǔn)的符合性,同時(shí)有助于檢驗(yàn)標(biāo)準(zhǔn)在工程中的實(shí)用性,保障國(guó)家復(fù)合出版系統(tǒng)工程的標(biāo)準(zhǔn)化和規(guī)范化。
附圖說(shuō)明
圖1是本發(fā)明面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試方法的流程圖;
圖2為本發(fā)明中批量生成全覆蓋測(cè)試用例方法流程圖;
圖3為本發(fā)明一個(gè)實(shí)施例中不同數(shù)據(jù)類型的參數(shù)測(cè)試值生成方法示意圖;
圖4為本發(fā)明中接口類測(cè)試工具系統(tǒng)架構(gòu)圖;
圖5為本發(fā)明中數(shù)據(jù)類測(cè)試工具系統(tǒng)架構(gòu)圖;
圖6為本發(fā)明面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試系統(tǒng)的模塊結(jié)構(gòu)示意圖。
符號(hào)說(shuō)明:
標(biāo)準(zhǔn)管理模塊—1,制定模塊—2,下載模塊—3,測(cè)試模塊—4,生成模塊—5。
具體實(shí)施方式
下面參照附圖來(lái)描述本發(fā)明的優(yōu)選實(shí)施方式。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解的是,這些實(shí)施方式僅僅用于解釋本發(fā)明的技術(shù)原理,并非旨在限制本發(fā)明的保護(hù)范圍。
如圖1所示,本發(fā)明面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試方法包括:
步驟100:根據(jù)測(cè)試對(duì)象選擇需要遵循的標(biāo)準(zhǔn),并確定對(duì)應(yīng)的測(cè)試需求,并對(duì)測(cè)試對(duì)象進(jìn)行注冊(cè),生成注冊(cè)信息。
步驟200:根據(jù)所述測(cè)試需求制定測(cè)試計(jì)劃。
步驟300:根據(jù)所述測(cè)試對(duì)象下載對(duì)應(yīng)的測(cè)試工具。
步驟400:根據(jù)所述測(cè)試工具及所述測(cè)試計(jì)劃對(duì)所述測(cè)試對(duì)象進(jìn)行標(biāo)準(zhǔn)符合性的測(cè)試。
步驟500:將標(biāo)準(zhǔn)符合性測(cè)試的測(cè)試結(jié)果生成測(cè)試報(bào)告。
其中,在步驟100中,所述測(cè)試對(duì)象包括測(cè)試接口和/或測(cè)試數(shù)據(jù)。所述生成注冊(cè)信息包括:獲得接口描述,并根據(jù)所述接口描述,批量生成全覆蓋測(cè)試用例;和/或獲得測(cè)試數(shù)據(jù)的測(cè)試信息。
進(jìn)一步地,所述接口描述包括:獲取接口描述的XML文檔,解析XML文檔中保存的接口描述信息并存入數(shù)據(jù)庫(kù),或者在網(wǎng)頁(yè)表單直接填寫(xiě)接口描述信息并存入數(shù)據(jù)庫(kù)。
如圖2所示,所述批量生成全覆蓋測(cè)試用例的方法包括:
步驟110:連接數(shù)據(jù)庫(kù),調(diào)取所述數(shù)據(jù)庫(kù)的參數(shù)表;步驟120:根據(jù)所述接口描述,從所述參數(shù)表獲取對(duì)應(yīng)接口描述的各參數(shù)的相關(guān)信息;步驟130:判斷所述測(cè)試值是否為空,如果是,則執(zhí)行步驟140;否則直接使用對(duì)應(yīng)的數(shù)值作為測(cè)試值,執(zhí)行步驟150;步驟140:根據(jù)參數(shù)的數(shù)據(jù)類型、約束信息以及測(cè)試用例類型,為接口的每個(gè)參數(shù)生成各種測(cè)試用例類型的測(cè)試值;步驟150:根據(jù)不同參數(shù)的測(cè)試值以及對(duì)應(yīng)的測(cè)試用例類型生成x的n次方條測(cè)試用例(其中,n表示為參數(shù)的個(gè)數(shù),x表示每個(gè)參數(shù)的測(cè)試值對(duì)應(yīng)的測(cè)試用例類型的種類);步驟160:將全部測(cè)試用例序列化為XML格式輸出。
所述參數(shù)表中記錄有各個(gè)參數(shù)的相關(guān)信息,包括參數(shù)名稱、參數(shù)數(shù)據(jù)類型、最小值、最大值、是否必選、參數(shù)默認(rèn)值、參數(shù)格式等,保存這些信息,并記錄參數(shù)個(gè)數(shù)。
各所述參數(shù)的相關(guān)信息包括參數(shù)的數(shù)據(jù)類型、約束信息、測(cè)試用例類型以及測(cè)試值。
所述參數(shù)的數(shù)據(jù)類型包括數(shù)值型(boolean,short,int,long,float,double)、字符串型(string)以及時(shí)間型(date,time)。所述參數(shù)的約束信息包括最小值、最大值、是否必選、參數(shù)格式,這些信息在初始化時(shí)從參數(shù)表中可得。所述測(cè)試用例類型包括四類:0表示有效隨機(jī)測(cè)試用例、1表示無(wú)效隨機(jī)測(cè)試用例、2表示左邊界值、3表示右邊界值。
所述批量生成全覆蓋測(cè)試用例方法中,不同數(shù)據(jù)類型的參數(shù)生成測(cè)試值的方法不同。
具體的,如圖3所示,所述為接口的每個(gè)參數(shù)生成各種測(cè)試用例類型的測(cè)試值包括:
(1)對(duì)于數(shù)值型,根據(jù)最大值、最小值以及測(cè)試用例類型生成測(cè)試值。具體的:
隨機(jī)生成在最小值和最大值范圍內(nèi)的相應(yīng)數(shù)值類型的隨機(jī)數(shù)作為有效隨機(jī)測(cè)試值、最小值作為左邊界值、最大值作為右邊界值。
隨機(jī)生成一個(gè)相應(yīng)數(shù)值類型的數(shù)值r1,再隨機(jī)取(最小值-r1)或者(最大值+r1)的值作為無(wú)效隨機(jī)測(cè)試值;其中,r1>0。
(2)對(duì)于字符串型,根據(jù)最大長(zhǎng)度、最小長(zhǎng)度以及測(cè)試用例類型生成測(cè)試值。具體的,
隨機(jī)生成在最小長(zhǎng)度和最大長(zhǎng)度范圍內(nèi)的整型隨機(jī)數(shù)值l,所述整型隨機(jī)數(shù)值l作為待生成的字符串的長(zhǎng)度,隨機(jī)生成長(zhǎng)度為l的字符串作為有效隨機(jī)測(cè)試值。
用最小長(zhǎng)度作為待生成的字符串的長(zhǎng)度,隨機(jī)生成該長(zhǎng)度的字符串作為左邊界值。
用最大長(zhǎng)度作為待生成的字符串的長(zhǎng)度,隨機(jī)生成該長(zhǎng)度的字符串作為右邊界值。
隨機(jī)生成一個(gè)整型的數(shù)值r2,再隨機(jī)取(最小長(zhǎng)度-r2)或者(最大長(zhǎng)度+r2)的值作為待生成的字符串的長(zhǎng)度,隨機(jī)生成該長(zhǎng)度的字符串作為無(wú)效隨機(jī)測(cè)試值;其中,0<r2<最小長(zhǎng)度。
(3)對(duì)于時(shí)間型,根據(jù)開(kāi)始時(shí)間、截止時(shí)間和時(shí)間格式以及測(cè)試用例類型生成測(cè)試值。具體的:
根據(jù)時(shí)間格式將開(kāi)始時(shí)間和截止時(shí)間轉(zhuǎn)化為長(zhǎng)整型的毫秒數(shù);
隨機(jī)生成在開(kāi)始時(shí)間和截止時(shí)間范圍內(nèi)的長(zhǎng)整型隨機(jī)數(shù),再將所述長(zhǎng)整型隨機(jī)數(shù)轉(zhuǎn)化為符合時(shí)間格式的時(shí)間作為有效隨機(jī)測(cè)試值;開(kāi)始時(shí)間作為左邊界值;截止時(shí)間作為右邊界值。
隨機(jī)生成一個(gè)長(zhǎng)整型的數(shù)值r3,再隨機(jī)取(開(kāi)始時(shí)間-r3)或者(截止時(shí)間+r3)的值,并將該值轉(zhuǎn)化為符合時(shí)間格式的時(shí)間作為無(wú)效隨機(jī)測(cè)試值;其中,0<r3<開(kāi)始時(shí)間。
各所述測(cè)試用例包括測(cè)試用例值及用例標(biāo)識(shí);其中,所述測(cè)試用例值為對(duì)應(yīng)接口的各參數(shù)的測(cè)試值的組合;所述用例標(biāo)識(shí)用n位x進(jìn)制數(shù)表示,用例標(biāo)識(shí)的第j位所表示所述接口第j個(gè)參數(shù)的測(cè)試用例類型。
某個(gè)接口a,有三個(gè)參數(shù),b,c,d,考慮到生成各種測(cè)試類型的測(cè)試參數(shù)的組合,那么該接口應(yīng)該生成的測(cè)試用例數(shù)量為4*4*4=64。第6條測(cè)試用例的用例標(biāo)識(shí)為6的四進(jìn)制數(shù)012,表示為第一個(gè)參數(shù)b生成有效隨機(jī)測(cè)試用例,為第二個(gè)參數(shù)c生成無(wú)效隨機(jī)測(cè)試用例、為第三個(gè)參數(shù)d生成左邊界值作為測(cè)試用例。
所述批量生成全覆蓋測(cè)試用例方法中測(cè)試用例類型是由用例標(biāo)識(shí)得到,用例標(biāo)識(shí)第j位所表示的測(cè)試用例類型,決定為該接口第j個(gè)參數(shù)生成的測(cè)試值。例如:用例標(biāo)識(shí)為012,第一位0為有效隨機(jī)測(cè)試用例,那么表示為第一個(gè)參數(shù)b生成有效隨機(jī)測(cè)試值。
所述的批量生成全覆蓋測(cè)試用例方法中,如果某個(gè)參數(shù)具有指定值,則將該指定值作為測(cè)試值,并將該參數(shù)對(duì)應(yīng)的用例標(biāo)識(shí)位值改為4(指定值用4表示)。例如:用例標(biāo)識(shí)原為012,如第一位參數(shù)b有指定值,則將該指定值作為參數(shù)b的測(cè)試值,并將用例標(biāo)識(shí)改為412。
進(jìn)一步地,所述測(cè)試需求包括需求編號(hào)、需求名稱、測(cè)試對(duì)象、處理狀態(tài)(已處理/未處理)、是否回歸測(cè)試、原需求編號(hào)、提交用戶、處理用戶,處理時(shí)間等。其中,選擇需要遵循的標(biāo)準(zhǔn)、確定對(duì)應(yīng)的測(cè)試需求及對(duì)測(cè)試對(duì)象進(jìn)行注冊(cè)一般由被測(cè)方參與執(zhí)行,而步驟200至步驟500的操作一般由測(cè)試員參與執(zhí)行。
在步驟200中,所述測(cè)試計(jì)劃包括計(jì)劃編號(hào)、測(cè)試需求、測(cè)試參數(shù)集合(如果測(cè)試對(duì)象是接口)、測(cè)試狀態(tài)(已完成/未完成)、測(cè)試參數(shù)執(zhí)行通過(guò)率(如果測(cè)試對(duì)象是接口)。
在步驟300中,所述測(cè)試工具包括接口類標(biāo)準(zhǔn)符合性測(cè)試工具和(如圖4和表1所示)/或數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具(如圖5和表2)所示。
表1接口類標(biāo)準(zhǔn)符合性測(cè)試工具的組成部件及其功能
表2數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具的組成部件及其功能
進(jìn)一步地,所述接口類標(biāo)準(zhǔn)符合性測(cè)試工具主要針對(duì)于能夠獲得執(zhí)行結(jié)果的接口實(shí)現(xiàn)方式進(jìn)行測(cè)試,其覆蓋的接口方式包括:WebService、RESTful和SDK。
所述接口類標(biāo)準(zhǔn)符合性測(cè)試工具針對(duì)的工具與系統(tǒng)包括:版面理解技術(shù)工具、版面編輯工具集、XML編輯工具集、智能檢校系統(tǒng)、出版社復(fù)合采編系統(tǒng)、期刊社復(fù)合采編系統(tǒng)、書(shū)刊協(xié)同采編系統(tǒng)、報(bào)社復(fù)合采編系統(tǒng)、媒體協(xié)同工作系統(tǒng)、結(jié)構(gòu)化全媒體待編稿庫(kù)管理系統(tǒng)、圖書(shū)選題及發(fā)行分析系統(tǒng)、新聞內(nèi)容選題及評(píng)價(jià)系統(tǒng)、XML排版系統(tǒng)、富媒體電子書(shū)制作工具、出版業(yè)在線學(xué)習(xí)平臺(tái)、全媒體資源管理系統(tǒng)、版權(quán)及版權(quán)資產(chǎn)管理系統(tǒng)、少數(shù)民族文字出版資源管理系統(tǒng)、少數(shù)民族文字出版輔助工具集、發(fā)布管理系統(tǒng)、文件分發(fā)與按需印刷系統(tǒng)、內(nèi)容動(dòng)態(tài)重組系統(tǒng)、出版機(jī)構(gòu)運(yùn)營(yíng)服務(wù)系統(tǒng)、出版機(jī)構(gòu)運(yùn)營(yíng)數(shù)據(jù)支撐系統(tǒng)、復(fù)合出版數(shù)據(jù)傳遞系統(tǒng)、數(shù)字資源標(biāo)識(shí)管理與解析服務(wù)系統(tǒng)、全國(guó)出版內(nèi)容交換系統(tǒng)、圖書(shū)館信息和社會(huì)化數(shù)據(jù)采集服務(wù)系統(tǒng)、出版策劃服務(wù)系統(tǒng)、數(shù)據(jù)交換池系統(tǒng)、多形態(tài)廣告發(fā)布系統(tǒng)、全文相似性分析系統(tǒng)、領(lǐng)域詞表構(gòu)建與管理系統(tǒng)、領(lǐng)域本體構(gòu)建與管理系統(tǒng)、工程集成。
所述接口類標(biāo)準(zhǔn)符合性測(cè)試工具對(duì)某個(gè)軟件工具或系統(tǒng)的接口進(jìn)行測(cè)試的前提是將需要測(cè)試的接口注冊(cè)到標(biāo)準(zhǔn)符合性測(cè)試集成服務(wù)系統(tǒng),系統(tǒng)會(huì)根據(jù)接口注冊(cè)的具體信息生成全覆蓋測(cè)試參數(shù)集合,這些測(cè)試參數(shù)集合可以從系統(tǒng)中導(dǎo)出到本地,然后使用相應(yīng)的接口類標(biāo)準(zhǔn)符合性測(cè)試工具完成對(duì)接口的自動(dòng)化測(cè)試。
在步驟400中,通過(guò)所述接口類標(biāo)準(zhǔn)符合性測(cè)試工具對(duì)所述測(cè)試接口進(jìn)行標(biāo)準(zhǔn)符合性的測(cè)試包括:步驟411:根據(jù)所述測(cè)試計(jì)劃選擇待測(cè)項(xiàng)目;步驟412:從所述待測(cè)項(xiàng)目的測(cè)試用例中選擇需要進(jìn)行測(cè)試的接口測(cè)試用例;步驟413:所述接口類標(biāo)準(zhǔn)符合性測(cè)試工具按順序讀取全部的接口測(cè)試用例以及對(duì)應(yīng)的預(yù)期結(jié)果;步驟414:將所述接口測(cè)試用例中的測(cè)試輸入作為接口的輸入?yún)?shù),調(diào)用測(cè)試接口提供或開(kāi)放的外部接口,進(jìn)行接口調(diào)用測(cè)試;步驟415:比較接口調(diào)用測(cè)試的結(jié)果與所述接口測(cè)試用例對(duì)應(yīng)的預(yù)期結(jié)果,確定接口測(cè)試用例的測(cè)試結(jié)果。
所述數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具包括:跨媒體數(shù)據(jù)鏈接規(guī)范測(cè)試工具、復(fù)合文檔基礎(chǔ)結(jié)構(gòu)測(cè)試工具、篇章復(fù)合文檔結(jié)構(gòu)測(cè)試工具、條目復(fù)合文檔結(jié)構(gòu)測(cè)試工具、新聞復(fù)合文檔結(jié)構(gòu)測(cè)試工具、論文復(fù)合文檔結(jié)構(gòu)測(cè)試工具、課件復(fù)合文檔結(jié)構(gòu)測(cè)試工具、出版產(chǎn)品版式規(guī)范測(cè)試工具、資源數(shù)據(jù)庫(kù)管理規(guī)范測(cè)試工具、工程軟件系統(tǒng)編碼規(guī)范測(cè)試工具、數(shù)字出版產(chǎn)品封裝規(guī)范測(cè)試工具;數(shù)據(jù)對(duì)象表現(xiàn)形式為:文件、數(shù)據(jù)項(xiàng)或數(shù)字化產(chǎn)品等。
通過(guò)所述數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具對(duì)所述測(cè)試數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)符合性的測(cè)試包括:步驟421:根據(jù)測(cè)試數(shù)據(jù)及測(cè)試計(jì)劃,將XML Schema文件以及測(cè)試數(shù)據(jù)加載到所述數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具上;步驟422:通過(guò)所述數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具驗(yàn)證所述測(cè)試數(shù)據(jù)的格式,命名、打包方式、存儲(chǔ)結(jié)構(gòu)以及測(cè)試數(shù)據(jù)中的各個(gè)文件命名及內(nèi)容,還有文件中各數(shù)據(jù)項(xiàng)的數(shù)據(jù)類型及格式與標(biāo)準(zhǔn)規(guī)定的符合程度;步驟423:確定測(cè)試結(jié)果。
以校驗(yàn)復(fù)合文檔數(shù)據(jù)包為例,數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具的執(zhí)行步驟包括:
S421':校驗(yàn)壓縮文件格式是否正確,文件名名是否與復(fù)合文檔命名空間的名稱一致,返回校驗(yàn)結(jié)果。
S422':解壓縮,并返回結(jié)果。若不能成功解壓縮,返回錯(cuò)誤日志(error.log),由于壓縮失敗導(dǎo)致后續(xù)步驟無(wú)法進(jìn)行,因此測(cè)試到此結(jié)束。
S423':校驗(yàn)必備文件夾及文件的命名及存放路徑是否正確,返回校驗(yàn)結(jié)果。由于該錯(cuò)誤會(huì)導(dǎo)致在后續(xù)步驟中找不到指定文件,因此步驟S424'-S426'針對(duì)指定文件內(nèi)容的校驗(yàn)無(wú)法進(jìn)行,直接跳轉(zhuǎn)S427'。
S424':校驗(yàn)指定文件的內(nèi)容是否符合標(biāo)準(zhǔn)要求,返回校驗(yàn)結(jié)果。
S425':校驗(yàn)指定XML文件是否通過(guò)對(duì)應(yīng)的XML Schema,返回校驗(yàn)結(jié)果。
S426':校驗(yàn)指定XML文件標(biāo)簽中的內(nèi)容是否符合標(biāo)準(zhǔn)要求,返回校驗(yàn)結(jié)果。
S427':將各項(xiàng)檢驗(yàn)結(jié)果用XML輸出。
本發(fā)明標(biāo)準(zhǔn)符合性測(cè)試方法有助于在系統(tǒng)總集前發(fā)現(xiàn)各技術(shù)分包承建單位可能出現(xiàn)的數(shù)據(jù)輸出不一致問(wèn)題、有助于盡可能地降低各個(gè)軟件模塊的接口錯(cuò)誤率,提高總集工作效率,確保復(fù)合出版系統(tǒng)工程研發(fā)的數(shù)據(jù)、軟件、系統(tǒng)與對(duì)應(yīng)標(biāo)準(zhǔn)的符合性,同時(shí)有助于檢驗(yàn)標(biāo)準(zhǔn)在工程中的實(shí)用性,保障國(guó)家復(fù)合出版系統(tǒng)工程的標(biāo)準(zhǔn)化和規(guī)范化。
其中,在本發(fā)明中,將用戶角色劃分為四類:系統(tǒng)管理員、測(cè)試管理員、測(cè)試員、普通用戶,不同角色具有不同的操作權(quán)限。
1、系統(tǒng)管理員
系統(tǒng)管理員主要負(fù)責(zé)對(duì)系統(tǒng)的部署和運(yùn)行維護(hù),并負(fù)責(zé)對(duì)用戶角色和權(quán)限進(jìn)行設(shè)置和管理。
2、測(cè)試管理員
測(cè)試管理員負(fù)責(zé)對(duì)系統(tǒng)中的測(cè)試標(biāo)準(zhǔn)、測(cè)試工具、測(cè)試參數(shù)等關(guān)鍵數(shù)據(jù)信息進(jìn)行管理。具體來(lái)說(shuō),測(cè)試管理員的具體工作如下:
(1)測(cè)試標(biāo)準(zhǔn)管理
負(fù)責(zé)各項(xiàng)測(cè)試標(biāo)準(zhǔn)的注冊(cè)、上傳和管理。為了便于查看,所有標(biāo)準(zhǔn)按照所屬領(lǐng)域分類管理,對(duì)外提供標(biāo)準(zhǔn)的檢索服務(wù)。
(2)測(cè)試工具管理
負(fù)責(zé)測(cè)試工具的注冊(cè)、上傳和管理。所有上傳后的測(cè)試工具都與測(cè)試標(biāo)準(zhǔn)一一對(duì)應(yīng)。
(3)測(cè)試參數(shù)管理
負(fù)責(zé)針對(duì)各項(xiàng)標(biāo)準(zhǔn)生成所有的測(cè)試用例,并根據(jù)業(yè)務(wù)需求將測(cè)試用例的使用權(quán)限進(jìn)行劃分為正式測(cè)試用例、用戶自測(cè)測(cè)試用例。正式測(cè)試用例主要用于正式測(cè)試業(yè)務(wù),普通用戶沒(méi)有權(quán)限瀏覽和使用該測(cè)試用例。用戶自測(cè)測(cè)試用例將對(duì)外公開(kāi)發(fā)布,各軟件開(kāi)發(fā)方可以瀏覽下載這些測(cè)試用例,用于軟件開(kāi)發(fā)過(guò)程中的內(nèi)部自測(cè)。
3、測(cè)試員
測(cè)試員是專門(mén)負(fù)責(zé)對(duì)軟件開(kāi)發(fā)方提供的測(cè)試對(duì)象開(kāi)展標(biāo)準(zhǔn)符合性測(cè)試的專業(yè)人員。測(cè)試員根據(jù)測(cè)試需求,有權(quán)限瀏覽、下載測(cè)試需要的測(cè)試用例庫(kù)和測(cè)試工具,注冊(cè)被測(cè)試對(duì)象,開(kāi)展第三方測(cè)試。將獲得的測(cè)試結(jié)果信息上傳到測(cè)試集成系統(tǒng)中,最終生成正式的測(cè)試報(bào)告。
4、自測(cè)用戶
自測(cè)用戶是指軟件開(kāi)發(fā)方,普通用戶有權(quán)限瀏覽、下載和使用本系統(tǒng)提供的測(cè)試工具和用戶自測(cè)測(cè)試參數(shù)集?;谒螺d的測(cè)試工具和用戶自測(cè)測(cè)試用例對(duì)自己所開(kāi)發(fā)的軟件系統(tǒng)和數(shù)字出版產(chǎn)品進(jìn)行內(nèi)部自測(cè)。
此外,本發(fā)明還提供一種面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試系統(tǒng)。如圖6所示,本發(fā)明面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試系統(tǒng)包括標(biāo)準(zhǔn)管理模塊1、制定模塊2、下載模塊3、測(cè)試模塊4及生成模塊5。
其中,所述標(biāo)準(zhǔn)管理模塊1用于被測(cè)方根據(jù)測(cè)試對(duì)象選擇需要遵循的標(biāo)準(zhǔn),并確定對(duì)應(yīng)的測(cè)試需求,并對(duì)測(cè)試對(duì)象進(jìn)行注冊(cè),生成注冊(cè)信息;其中,所述測(cè)試對(duì)象包括測(cè)試接口和/或測(cè)試數(shù)據(jù);所述制定模塊2用于根據(jù)所述測(cè)試需求制定測(cè)試計(jì)劃;所述下載模塊3用于根據(jù)所述測(cè)試對(duì)象下載對(duì)應(yīng)的測(cè)試工具,其中,所述測(cè)試工具包括接口類標(biāo)準(zhǔn)符合性測(cè)試工具和/或數(shù)據(jù)類標(biāo)準(zhǔn)符合性測(cè)試工具;所述測(cè)試模塊4用于根據(jù)所述測(cè)試工具及所述測(cè)試計(jì)劃對(duì)所述測(cè)試對(duì)象進(jìn)行標(biāo)準(zhǔn)符合性的測(cè)試;所述生成模塊5用于將標(biāo)準(zhǔn)符合性測(cè)試的測(cè)試結(jié)果生成測(cè)試報(bào)告,所述測(cè)試報(bào)告為XML格式。
進(jìn)一步地,所述標(biāo)準(zhǔn)管理模塊1由被測(cè)方參與執(zhí)行;所述制定模塊2、下載模塊3、測(cè)試模塊4及生成模塊5由測(cè)試方參與執(zhí)行。
所述標(biāo)準(zhǔn)管理模塊1具有添加、刪除、修改以及查詢的功能;所述標(biāo)準(zhǔn)管理模塊1和下載模塊3可供下載標(biāo)準(zhǔn)文檔以及各種接口類和數(shù)據(jù)類的測(cè)試工具。
相對(duì)于現(xiàn)有技術(shù),本發(fā)明面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試系統(tǒng)與上述面向數(shù)字出版的標(biāo)準(zhǔn)符合性的測(cè)試方法的有益效果相同,在此不再贅述。
至此,已經(jīng)結(jié)合附圖所示的優(yōu)選實(shí)施方式描述了本發(fā)明的技術(shù)方案,但是,本領(lǐng)域技術(shù)人員容易理解的是,本發(fā)明的保護(hù)范圍顯然不局限于這些具體實(shí)施方式。在不偏離本發(fā)明的原理的前提下,本領(lǐng)域技術(shù)人員可以對(duì)相關(guān)技術(shù)特征作出等同的更改或替換,這些更改或替換之后的技術(shù)方案都將落入本發(fā)明的保護(hù)范圍之內(nèi)。