一種控制邏輯的測(cè)試系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及電廠熱工控制領(lǐng)域,具體涉及一種控制邏輯的測(cè)試系統(tǒng)及方法。
【背景技術(shù)】
[0002]在電廠設(shè)計(jì)中,熱工控制系統(tǒng)的控制邏輯設(shè)計(jì)是其中一個(gè)重要環(huán)節(jié),它直接關(guān)系到電廠是否平穩(wěn)安全運(yùn)行、緊急事故能否及時(shí)處理等重大問(wèn)題。在設(shè)計(jì)控制系統(tǒng)時(shí),首先要根據(jù)控制過(guò)程的要求,繪制過(guò)程控制系統(tǒng)的控制邏輯圖,然后根據(jù)控制邏輯圖,進(jìn)行控制系統(tǒng)的組態(tài)設(shè)計(jì),最后對(duì)完成的控制邏輯進(jìn)行測(cè)試驗(yàn)證以確保設(shè)計(jì)的控制邏輯符合預(yù)期的要求。目前,電廠熱工控制邏輯的測(cè)試主要采用手動(dòng)測(cè)試方法,即根據(jù)測(cè)試流程手動(dòng)設(shè)置輸入測(cè)試用例,觀察、記錄輸出結(jié)果,再人工判斷測(cè)試結(jié)果是否正確,其存在一定的問(wèn)題,如測(cè)試人員需對(duì)每個(gè)待測(cè)試流程都較為熟悉;完全手動(dòng)設(shè)置輸入變量,并記錄輸出變量,不僅耗時(shí)耗力、效率較低,而且容易出現(xiàn)人為失誤,造成輸入變量不正確或輸出結(jié)果記錄不正確等。所以當(dāng)前迫切需要一種能解決上述問(wèn)題的控制邏輯測(cè)試方案。
【發(fā)明內(nèi)容】
[0003]本發(fā)明目的在于克服現(xiàn)有技術(shù)存在的問(wèn)題,提供一種控制邏輯的測(cè)試系統(tǒng)及方法,該系統(tǒng)及方法能夠自動(dòng)生成測(cè)試用例并批量執(zhí)行測(cè)試驗(yàn)證作業(yè),大大減少人為操作,讓用戶方便、快速地完成控制邏輯測(cè)試驗(yàn)證工作,減少人因錯(cuò)誤,提高測(cè)試質(zhì)量和效率。
[0004]實(shí)現(xiàn)本發(fā)明目的的技術(shù)方案:一種控制邏輯的測(cè)試系統(tǒng),其包括用戶信息驗(yàn)證服務(wù)器、標(biāo)準(zhǔn)測(cè)試用例管理服務(wù)器、測(cè)試結(jié)果管理服務(wù)器和應(yīng)用程序工作站;
[0005]所述的應(yīng)用程序工作站包括用戶權(quán)限驗(yàn)證模塊、標(biāo)準(zhǔn)庫(kù)生成模塊、模型轉(zhuǎn)換模塊和測(cè)試引擎模塊;應(yīng)用程序工作站通過(guò)網(wǎng)絡(luò)將用戶信息驗(yàn)證服務(wù)器、標(biāo)準(zhǔn)測(cè)試用例管理服務(wù)器和測(cè)試結(jié)果管理服務(wù)器連接起來(lái);
[0006]所述的用戶信息驗(yàn)證服務(wù)器包含用戶信息及用于存儲(chǔ)這些信息的數(shù)據(jù)庫(kù);用戶信息驗(yàn)證服務(wù)器用于處理應(yīng)用程序工作站發(fā)送的用戶信息驗(yàn)證請(qǐng)求,用戶信息驗(yàn)證服務(wù)器接受請(qǐng)求,根據(jù)請(qǐng)求驗(yàn)證用戶的操作權(quán)限,并將結(jié)果返回給應(yīng)用程序工作站;
[0007]所述的標(biāo)準(zhǔn)測(cè)試用例管理服務(wù)器包含標(biāo)準(zhǔn)測(cè)試用例數(shù)據(jù)及用于存儲(chǔ)這些數(shù)據(jù)的數(shù)據(jù)庫(kù);標(biāo)準(zhǔn)測(cè)試用例管理服務(wù)器用于處理應(yīng)用程序工作站發(fā)送的標(biāo)準(zhǔn)測(cè)試用例查詢(xún)、調(diào)用請(qǐng)求,標(biāo)準(zhǔn)測(cè)試用例管理服務(wù)器根據(jù)請(qǐng)求,在標(biāo)準(zhǔn)測(cè)試用例數(shù)據(jù)庫(kù)中查詢(xún)符合條件的標(biāo)準(zhǔn)測(cè)試用例,將所獲取的標(biāo)準(zhǔn)測(cè)試用例返回給應(yīng)用程序工作站;
[0008]所述的測(cè)試結(jié)果管理服務(wù)器包含測(cè)試結(jié)果數(shù)據(jù)及用于存儲(chǔ)這些數(shù)據(jù)的數(shù)據(jù)庫(kù);測(cè)試結(jié)果管理服務(wù)器用于處理應(yīng)用工作站發(fā)送的測(cè)試結(jié)果存儲(chǔ)請(qǐng)求,應(yīng)用工作站根據(jù)測(cè)試結(jié)果編號(hào),將測(cè)試結(jié)果存入測(cè)試結(jié)果數(shù)據(jù)庫(kù)中。
[0009]如上所述的一種控制邏輯的測(cè)試系統(tǒng),其所述的應(yīng)用程序工作站包括用戶權(quán)限驗(yàn)證模塊、標(biāo)準(zhǔn)庫(kù)生成模塊、模型轉(zhuǎn)換模塊和測(cè)試引擎模塊,其具體如下:用戶權(quán)限驗(yàn)證模塊,用于將用戶信息發(fā)送給用戶信息驗(yàn)證管理服務(wù)器,用戶信息驗(yàn)證管理服務(wù)器驗(yàn)證用戶的操作權(quán)限,將驗(yàn)證結(jié)果返回給應(yīng)用程序工作站;標(biāo)準(zhǔn)庫(kù)生成模塊,用于在標(biāo)準(zhǔn)測(cè)試用例管理服務(wù)器中創(chuàng)建標(biāo)準(zhǔn)測(cè)試用例;模型轉(zhuǎn)換模塊,用于將控制邏輯模型轉(zhuǎn)換為可與測(cè)試引擎模塊交互的測(cè)試模型;所述的模型轉(zhuǎn)換模塊首先將控制邏輯中算法模塊轉(zhuǎn)換為函數(shù)代碼,其次梳理控制邏輯中輸入、輸出點(diǎn)和算法模塊參數(shù)信息并生成清單文件,所述輸入、輸出點(diǎn)清單文件包含輸入、輸出點(diǎn)名及其類(lèi)型,所述算法模塊參數(shù)清單文件包含參數(shù)變量名及其數(shù)值,最后將函數(shù)代碼整合成為可編譯程序,編譯后便得到可與測(cè)試引擎模塊交互的測(cè)試模型;
[0010]測(cè)試引擎模塊包含模型解析子模塊、測(cè)試用例生成子模塊、測(cè)試執(zhí)行子模塊、結(jié)果判定子模塊和結(jié)果輸出子模塊;其中,所述模型解析子模塊,用于解析模型轉(zhuǎn)換模塊生成的被測(cè)模型,得到模型輸入點(diǎn)和輸出點(diǎn)的名稱(chēng)、數(shù)量及其類(lèi)型等關(guān)鍵信息;所述測(cè)試用例生成子模塊,用于根據(jù)模型解析模塊所得信息,查找標(biāo)準(zhǔn)測(cè)試用例管理服務(wù)器中符合條件的標(biāo)準(zhǔn)測(cè)試用例,并利用被測(cè)模型信息和標(biāo)準(zhǔn)測(cè)試用例生成被測(cè)模型的測(cè)試用例;所述測(cè)試執(zhí)行子模塊,用于讀取測(cè)試用例生成子模塊生成的測(cè)試用例中輸入點(diǎn)值,將其賦值于測(cè)試模型輸入點(diǎn),再根據(jù)測(cè)試用例設(shè)定的執(zhí)行時(shí)間進(jìn)行運(yùn)算,并保存運(yùn)算結(jié)果;所述結(jié)果判定子模塊,用于判定測(cè)試執(zhí)行子模塊的運(yùn)算結(jié)果是否滿足容差要求或符合期望趨勢(shì)。所述測(cè)試模型變量可分為數(shù)字量和模擬量?jī)煞N類(lèi)型,數(shù)字量可由容差判定,模擬量可由期望趨勢(shì)判定;所述結(jié)果輸出子模塊,用于根據(jù)結(jié)果判定子模塊的判定結(jié)果調(diào)用不同測(cè)試報(bào)告模版,生成、輸出測(cè)試報(bào)告并將測(cè)試報(bào)告存儲(chǔ)至測(cè)試結(jié)果管理服務(wù)器;所述測(cè)試報(bào)告模版是根據(jù)不同測(cè)試結(jié)果在外部定制的測(cè)試模版,用于存儲(chǔ)測(cè)試結(jié)果數(shù)據(jù)。
[0011]如上所述的一種控制邏輯的測(cè)試系統(tǒng),其所述的標(biāo)準(zhǔn)測(cè)試用例是指具有通用性的測(cè)試用例,可復(fù)用于不同被測(cè)模型的測(cè)試,其包含測(cè)試模型輸入點(diǎn)名、輸出點(diǎn)名、容差、執(zhí)行時(shí)間、輸入點(diǎn)值和輸出點(diǎn)預(yù)期值信息。
[0012]如上所述的一種控制邏輯的測(cè)試系統(tǒng),其控制邏輯測(cè)試過(guò)程中的所有請(qǐng)求、動(dòng)作都是由應(yīng)用程序工作站發(fā)送并執(zhí)行的。
[0013]本發(fā)明所述的一種控制邏輯的測(cè)試方法,其包括以下步驟:
[0014]步驟S1:調(diào)用標(biāo)準(zhǔn)庫(kù)生成模塊創(chuàng)建標(biāo)準(zhǔn)測(cè)試用例,所述標(biāo)準(zhǔn)測(cè)試用例是指具有通用性的測(cè)試用例,可復(fù)用于不同被測(cè)模型的測(cè)試用例,其包含測(cè)試模型輸入點(diǎn)名、輸出點(diǎn)名、容差、執(zhí)行時(shí)間、輸入點(diǎn)值和輸出點(diǎn)預(yù)期值信息;
[0015]步驟S2:通過(guò)模型轉(zhuǎn)換模塊將控制邏輯算法模塊轉(zhuǎn)換為函數(shù)代碼,生成輸入點(diǎn)清單文件、輸出點(diǎn)清單文件和算法模塊參數(shù)清單文件,整合函數(shù)代碼編譯成可與測(cè)試引擎模塊交互的測(cè)試模型;所述輸入、輸出點(diǎn)清單文件包含模型點(diǎn)名及其類(lèi)型信息,所述算法模塊參數(shù)清單文件包含參數(shù)名及其類(lèi)型信息;
[0016]步驟S3:調(diào)用模型解析子模塊解析被測(cè)模型,得到模型輸入點(diǎn)和輸出點(diǎn)名稱(chēng)、數(shù)量及其類(lèi)型信息;
[0017]步驟S4:根據(jù)步驟S3所得模型點(diǎn)名、數(shù)量及其類(lèi)型信息,調(diào)用測(cè)試用例生成子模塊查詢(xún)標(biāo)準(zhǔn)測(cè)試用例管理服務(wù)器中滿足條件的標(biāo)準(zhǔn)測(cè)試用例,并利用被測(cè)模型信息和標(biāo)準(zhǔn)測(cè)試用例生成被測(cè)模型測(cè)試用例;
[0018]步驟S5:測(cè)試執(zhí)行子模塊讀取步驟S4生成的測(cè)試用例中輸入點(diǎn)值,將其賦值于測(cè)試模型輸入點(diǎn),再根據(jù)測(cè)試用例設(shè)定的執(zhí)行時(shí)間進(jìn)行運(yùn)算,保存運(yùn)算結(jié)果;
[0019]步驟S6:通過(guò)結(jié)果判定子模塊比較運(yùn)算結(jié)果是否滿足容差要求或符合期望趨勢(shì)來(lái)判定測(cè)試結(jié)果,所述被測(cè)模型變量可分為數(shù)字量和模擬量?jī)煞N類(lèi)型;
[0020]步驟S7:根據(jù)步驟S6判定結(jié)果得到是否通過(guò)測(cè)試,若是,則調(diào)用“測(cè)試報(bào)告模版Y”生成測(cè)試報(bào)告;若否,則調(diào)用“測(cè)試報(bào)告模版N”生成測(cè)試報(bào)告并用顏色標(biāo)注未通過(guò)項(xiàng);輸出測(cè)試報(bào)告并將測(cè)試結(jié)果存儲(chǔ)至測(cè)試結(jié)果管理服務(wù)器。
[0021]如上所述的一種控制邏輯的測(cè)試方法,其步驟SI所述的標(biāo)準(zhǔn)測(cè)試用例通常是預(yù)先創(chuàng)建好并保存至標(biāo)準(zhǔn)測(cè)試用例管理服務(wù)器。
[0022]如上所述的一種控制邏輯的測(cè)試方法,步驟S7所述測(cè)試報(bào)告模版是根據(jù)不同測(cè)試結(jié)果在外部定制的測(cè)試模版,用于存儲(chǔ)測(cè)試結(jié)果數(shù)據(jù)。
[0023]本發(fā)明的效果在于:本發(fā)明提出了一種控制邏輯的測(cè)試系統(tǒng)及方法,該系統(tǒng)及方法可以自動(dòng)生成測(cè)試用例并批量執(zhí)行測(cè)試驗(yàn)證作業(yè),大大減少人為