一種回歸測(cè)試系統(tǒng)及測(cè)試方法
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及測(cè)試技術(shù)領(lǐng)域,特別是涉及一種回歸測(cè)試系統(tǒng)及測(cè)試方法。
【背景技術(shù)】
[0002]回歸測(cè)試是軟件生命周期中的一個(gè)重要且必要的環(huán)節(jié),在軟件測(cè)試過程中占有很大的工作量和比重,在軟件開發(fā)過程中的各個(gè)階段都需要進(jìn)行回歸測(cè)試。對(duì)于不同類型的軟件,測(cè)試環(huán)境和方法各不相同。對(duì)于單機(jī)運(yùn)行的軟件,測(cè)試環(huán)境就是運(yùn)行該軟件的客戶端,直接在軟件運(yùn)行的客戶端上就可以進(jìn)行測(cè)試。對(duì)于聯(lián)機(jī)運(yùn)行的軟件,不僅需要測(cè)試該軟件在客戶端和服務(wù)端各自實(shí)現(xiàn)的功能,還需要測(cè)試客戶端和服務(wù)端之間的交互。因此,聯(lián)機(jī)軟件測(cè)試環(huán)境比較復(fù)雜,需要一系列能夠提供完整功能的資源,包括:電腦軟件、業(yè)務(wù)數(shù)據(jù)、電腦硬件、網(wǎng)絡(luò)等。尤其在測(cè)試客戶端和服務(wù)端之間的通信軟件時(shí),至少需要客戶端和服務(wù)端兩類設(shè)備。
[0003]然而,在軟件開發(fā)過程中,經(jīng)常會(huì)出現(xiàn)測(cè)試資源短缺的情況,例如,服務(wù)器被撤走、關(guān)閉、或者不能提供服務(wù)等,導(dǎo)致不滿足測(cè)試條件?,F(xiàn)有技術(shù)中,為了能夠在測(cè)試資源短缺的情況下,能夠繼續(xù)測(cè)試,通常采用模擬短缺資源的做法,例如,模擬各個(gè)服務(wù)端。現(xiàn)有技術(shù)中的這種做法需要開發(fā)人員進(jìn)行編碼,例如:修改代碼客戶端代碼、或者在正常的從客戶端到服務(wù)端之間的通路中間插入一段程序代碼,用于阻止客戶端繼續(xù)發(fā)往服務(wù)端,并模擬服務(wù)端的反饋,將客戶端需要的數(shù)據(jù)給客戶端。當(dāng)服務(wù)端修改了某個(gè)功能時(shí),客戶端需要再一次進(jìn)行代碼修改和回歸測(cè)試,耗費(fèi)大量人力、時(shí)間,測(cè)試效率低下,而且可能會(huì)有遺漏。
[0004]因此,需要本領(lǐng)域技術(shù)人員迫切解決的一個(gè)技術(shù)問題就是:如何能夠快速、高效的實(shí)現(xiàn)聯(lián)機(jī)軟件的回歸測(cè)試。
【發(fā)明內(nèi)容】
[0005]本申請(qǐng)所要解決的技術(shù)問題是提供一種回歸測(cè)試系統(tǒng)和測(cè)試方法,能夠高效地實(shí)現(xiàn)回歸測(cè)試,并且不遺漏測(cè)試項(xiàng)。
[0006]為了解決上述問題,本申請(qǐng)實(shí)施例公開了一種回歸測(cè)試系統(tǒng),設(shè)置于基于報(bào)文進(jìn)行通信的客戶端和服務(wù)端之間,所述回歸測(cè)試系統(tǒng)包括:分別與客戶端和服務(wù)端連接的通信代理服務(wù)器,與所述通信代理服務(wù)器連接的測(cè)試管理系統(tǒng),其中,所述測(cè)試管理系統(tǒng)用于:在回歸測(cè)試模式,根據(jù)通信代理服務(wù)器發(fā)送的請(qǐng)求報(bào)文,從預(yù)先存儲(chǔ)的報(bào)文中選擇相應(yīng)的應(yīng)答報(bào)文反饋至所述通信代理服務(wù)器;所述通信代理服務(wù)器用于:在回歸測(cè)試模式,將接收的客戶端發(fā)送的請(qǐng)求報(bào)文轉(zhuǎn)發(fā)至測(cè)試管理系統(tǒng),并將測(cè)試管理系統(tǒng)發(fā)送的應(yīng)答報(bào)文轉(zhuǎn)發(fā)至發(fā)起請(qǐng)求的客戶端。
[0007]進(jìn)一步地,所述測(cè)試管理服務(wù)器還用于,在回歸測(cè)試模式,從預(yù)先存儲(chǔ)的報(bào)文中選擇請(qǐng)求報(bào)文,發(fā)送至所述通信代理服務(wù)器;所述通信代理服務(wù)器還用于,在回歸測(cè)試模式,將接收的從預(yù)先存儲(chǔ)的報(bào)文中選擇的所述請(qǐng)求報(bào)文發(fā)送至相應(yīng)的服務(wù)端。
[0008]進(jìn)一步地,所述通信代理服務(wù)器還用于:在非回歸測(cè)試模式,將接收的客戶端發(fā)送的請(qǐng)求報(bào)文和服務(wù)端發(fā)送的應(yīng)答報(bào)文打包后轉(zhuǎn)發(fā)至測(cè)試管理系統(tǒng)存儲(chǔ)。所述通信代理服務(wù)器進(jìn)一步包括:管理節(jié)點(diǎn)、至少一個(gè)通信代理節(jié)點(diǎn);所述測(cè)試管理系統(tǒng)還用于設(shè)置所述通信代理節(jié)點(diǎn)的配置信息;所述管理節(jié)點(diǎn)根據(jù)接收的測(cè)試管理系統(tǒng)發(fā)送的配置信息,配置各個(gè)所述通信代理節(jié)點(diǎn),其中,一個(gè)通信代理節(jié)點(diǎn)對(duì)應(yīng)一種報(bào)文。
[0009]所述配置信息包括:報(bào)文采集規(guī)則,所述通信代理節(jié)點(diǎn)根據(jù)所述報(bào)文采集規(guī)則對(duì)接收的客戶端發(fā)送的請(qǐng)求報(bào)文和服務(wù)端發(fā)送的應(yīng)答報(bào)文進(jìn)行篩選,將篩選得到的報(bào)文轉(zhuǎn)發(fā)至測(cè)試管理系統(tǒng)存儲(chǔ)。
[0010]進(jìn)一步地,所述測(cè)試管理系統(tǒng)還用于編輯存儲(chǔ)的報(bào)文,生成回歸測(cè)試用例。
[0011]所述測(cè)試管理系統(tǒng)還用于設(shè)置回歸測(cè)試用例批次,并按照設(shè)置的批次依次執(zhí)行所述回歸測(cè)試用例。
[0012]為了解決上述問題,本申請(qǐng)實(shí)施例還公開了一種回歸測(cè)試方法,在基于報(bào)文進(jìn)行通信的客戶端和服務(wù)端之間設(shè)置回歸測(cè)試系統(tǒng),所述回歸測(cè)試系統(tǒng)包括:分別與客戶端和服務(wù)端連接的通信代理服務(wù)器,與所述通信代理服務(wù)器連接的測(cè)試管理系統(tǒng),所述回歸測(cè)試方法包括:所述通信代理服務(wù)器接收所述客戶端發(fā)送的請(qǐng)求報(bào)文并轉(zhuǎn)發(fā)至所述測(cè)試管理系統(tǒng);所述測(cè)試管理系統(tǒng)從預(yù)先存儲(chǔ)的報(bào)文中選擇相應(yīng)的應(yīng)答報(bào)文反饋至所述通信代理服務(wù)器;所述通信代理服務(wù)器將所述測(cè)試管理系統(tǒng)反饋的所述應(yīng)答報(bào)文轉(zhuǎn)發(fā)至發(fā)起請(qǐng)求的客戶端。
[0013]進(jìn)一步地,所述方法還包括:在回歸測(cè)試模式,所述測(cè)試管理系統(tǒng)從預(yù)先存儲(chǔ)的報(bào)文中選擇請(qǐng)求報(bào)文,發(fā)送至所述通信代理服務(wù)器;所述通信代理服務(wù)器將接收的所述請(qǐng)求報(bào)文發(fā)送至相應(yīng)的服務(wù)端。
[0014]更進(jìn)一步地,所述方法還包括:在非回歸測(cè)試模式,所述通信代理服務(wù)器將接收的客戶端發(fā)送的請(qǐng)求報(bào)文和服務(wù)端發(fā)送的應(yīng)答報(bào)文打包后轉(zhuǎn)發(fā)至測(cè)試管理系統(tǒng)存儲(chǔ)。
[0015]與現(xiàn)有技術(shù)相比,本申請(qǐng)的實(shí)施例,通過在客戶端和服務(wù)端之間設(shè)置回歸測(cè)試系統(tǒng),由回歸測(cè)試系統(tǒng)的測(cè)試管理系統(tǒng)預(yù)先存儲(chǔ)不同測(cè)試用例對(duì)應(yīng)的“請(qǐng)求-應(yīng)答”報(bào)文,并在回歸測(cè)試時(shí),根據(jù)通信代理服務(wù)器發(fā)送的請(qǐng)求報(bào)文,從預(yù)先存儲(chǔ)的報(bào)文中選擇相應(yīng)的應(yīng)答報(bào)文反饋至所述通信代理服務(wù)器,由測(cè)試管理系統(tǒng)模擬服務(wù)端發(fā)送應(yīng)答報(bào)文轉(zhuǎn)發(fā)至發(fā)起請(qǐng)求的客戶端,從而完成回歸測(cè)試。在測(cè)試環(huán)境改變時(shí),不需要軟件開發(fā)人員重新進(jìn)行編碼,就可以實(shí)現(xiàn)回歸測(cè)試,提高了回歸測(cè)試的效率。
【附圖說明】
[0016]圖1是本申請(qǐng)的回歸測(cè)試系統(tǒng)應(yīng)用場景示意圖;
[0017]圖2是本申請(qǐng)的回歸測(cè)試系統(tǒng)一實(shí)施例的結(jié)構(gòu)示意圖;
[0018]圖3是本申請(qǐng)另一具體實(shí)施例中的通信代理服務(wù)器結(jié)構(gòu)示意圖;
[0019]圖4是本申請(qǐng)回歸測(cè)試方法一實(shí)施例流程示意圖;
[0020]圖5是本申請(qǐng)回歸測(cè)試方法另一具體實(shí)施例流程示意圖。
【具體實(shí)施方式】
[0021]為了使讀者更清楚地理解本申請(qǐng),首先對(duì)本申請(qǐng)的應(yīng)用場景進(jìn)行說明。“報(bào)文”是兩個(gè)或者多個(gè)電腦軟件系統(tǒng)之間進(jìn)行信息交流、通信的一種信息格式的統(tǒng)稱。本申請(qǐng)適用于客戶端與服務(wù)端之間通過“報(bào)文”進(jìn)行通信的通信系統(tǒng)。
[0022]在客戶端和服務(wù)端處在常規(guī)工作模式或者功能、性能驗(yàn)證階段時(shí),測(cè)試管理系統(tǒng)將客戶端發(fā)送的請(qǐng)求報(bào)文轉(zhuǎn)發(fā)至指定的服務(wù)端,并將該指定的服務(wù)端反饋的應(yīng)答報(bào)文轉(zhuǎn)發(fā)至發(fā)送請(qǐng)求報(bào)文的客戶端,這種工作模式稱為非回歸測(cè)試模式。當(dāng)客戶端或者服務(wù)端的功能或代碼修改后,需要對(duì)已經(jīng)測(cè)試過的功能進(jìn)行再一次的驗(yàn)證,稱作:回歸測(cè)試,這種工作模式稱為回歸測(cè)試模式。此時(shí),客戶端和服務(wù)器通常無法根據(jù)對(duì)端的修改提供相應(yīng)的服務(wù)。
[0023]在回歸測(cè)試時(shí),客戶端通常是沒有改變的,通常是服務(wù)端進(jìn)行了改動(dòng)。當(dāng)服務(wù)端撤掉或者不提供服務(wù)時(shí),客戶端發(fā)給服務(wù)端的報(bào)文將得不到及時(shí)、準(zhǔn)確地反饋,因此無法完成回歸測(cè)試。同理,如果客戶端不在線,服務(wù)端發(fā)送的報(bào)文也得不到及時(shí)、準(zhǔn)確地反饋,服務(wù)端也無法實(shí)現(xiàn)回歸測(cè)試。
[0024]本申請(qǐng)的回歸測(cè)試系統(tǒng)20設(shè)置在各個(gè)有報(bào)文交互的客戶端10和服務(wù)端30之間,如圖1所示。本申請(qǐng)通過在各個(gè)有報(bào)文交互的“客戶端”與“服務(wù)端”之間增加一個(gè)“回歸測(cè)試系統(tǒng)”,可以獲取到“客戶端”發(fā)來的“請(qǐng)求”報(bào)文和“服務(wù)端”應(yīng)答的“響應(yīng)”報(bào)文。本申請(qǐng)中的“客戶端”和“服務(wù)端”是從“請(qǐng)求”和“應(yīng)答”的角度區(qū)分的,對(duì)“客戶端”和“服務(wù)端”的設(shè)備類型不做限定。
[0025]為使本申請(qǐng)的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和【具體實(shí)施方式】對(duì)本申請(qǐng)作進(jìn)一步詳細(xì)的說明。
[0026]參照?qǐng)D2,圖2示出了本申請(qǐng)一種回歸測(cè)試系統(tǒng)結(jié)構(gòu)示意圖。本申請(qǐng)實(shí)施例的回歸測(cè)試系統(tǒng)包括:分別與客戶端和服務(wù)端連接的通信代理服務(wù)器201,與所述通信代理服務(wù)器連接的測(cè)試管理系統(tǒng)202。
[0027]所述測(cè)試管理系統(tǒng)202用于:在回歸測(cè)試模式,根據(jù)通信代理服務(wù)器201發(fā)送的請(qǐng)求報(bào)文,從預(yù)先存儲(chǔ)的報(bào)文中選擇相應(yīng)的應(yīng)答報(bào)文反饋至所述通信代理服務(wù)器201。預(yù)先存儲(chǔ)的報(bào)文可以是測(cè)試人員編寫的測(cè)試用例,如包括對(duì)應(yīng)各種測(cè)試環(huán)境的“請(qǐng)求-應(yīng)答”報(bào)文列表,也可以是在前期測(cè)試過程中截獲并存儲(chǔ)的“請(qǐng)求-應(yīng)答”報(bào)文。
[0028]所述通信代理服務(wù)器201用于:在回歸測(cè)試模式,將接收的客戶端發(fā)送的請(qǐng)求報(bào)文轉(zhuǎn)發(fā)至測(cè)試管理系統(tǒng)202,并將測(cè)試管理系統(tǒng)202發(fā)送的應(yīng)答報(bào)文轉(zhuǎn)發(fā)至發(fā)起請(qǐng)求的客戶端。
[0029]本申請(qǐng)的實(shí)施例,通過在客戶端10和服務(wù)端30之間設(shè)置回歸測(cè)試系統(tǒng)20,由回歸測(cè)試系統(tǒng)20的測(cè)試管理系統(tǒng)202預(yù)先存儲(chǔ)不同測(cè)試用例對(duì)應(yīng)的“請(qǐng)求-應(yīng)答”報(bào)文,并在回歸測(cè)試時(shí),根據(jù)通信代理服務(wù)器201發(fā)送的請(qǐng)求報(bào)文,從預(yù)先存儲(chǔ)的報(bào)文中選擇相應(yīng)的應(yīng)答報(bào)文反饋至所述通信代理服務(wù)器201,由測(cè)試管理系統(tǒng)202模擬服務(wù)端發(fā)送應(yīng)答報(bào)文轉(zhuǎn)發(fā)至發(fā)起請(qǐng)求的客戶端,從而完成回歸測(cè)試,不需要開發(fā)人員修改代碼,提高了回歸測(cè)試的效率。
[0030]基于上述實(shí)施例,在回歸測(cè)試時(shí),通常也存在客戶端不在線的情況。本申請(qǐng)的回歸測(cè)試系統(tǒng)中的