陳龍生
(江蘇省軟件產(chǎn)品檢測(cè)中心,江蘇南京210012)
Web服務(wù)軟件測(cè)試技術(shù)的實(shí)現(xiàn)探討
陳龍生
(江蘇省軟件產(chǎn)品檢測(cè)中心,江蘇南京210012)
Web服務(wù)的分布式計(jì)算模型在Internet的環(huán)境下具有很多優(yōu)點(diǎn)。通過論述該計(jì)算模型的實(shí)際處理辦法,提出了基于該服務(wù)標(biāo)準(zhǔn)的基本通信協(xié)議,通過外包服務(wù)軟件來進(jìn)行測(cè)試,實(shí)現(xiàn)通訊信息在比較好的控制分析環(huán)境下進(jìn)行處理,同時(shí)介紹了系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)過程,并進(jìn)一步探討了相關(guān)的內(nèi)容。
分布式軟件;軟件測(cè)試技術(shù);Web服務(wù);Soap協(xié)議
分布式的設(shè)計(jì)要求主要是考慮到計(jì)算機(jī)在進(jìn)行網(wǎng)絡(luò)化的處理時(shí),在對(duì)一些模塊的服務(wù)響應(yīng)過程中可能會(huì)存在一些問題,所以采用了獨(dú)立運(yùn)作、請(qǐng)求服務(wù)的操作方式,但是這些模型的交互性在相關(guān)的處理上比較差,所以它對(duì)平臺(tái)的要求不高,是比較適合當(dāng)前的發(fā)展需求的。
目前,在服務(wù)器間的通訊都是使用Soap協(xié)議進(jìn)行的,本文針對(duì)這一問題作出了詳細(xì)的介紹和肯定的處理,主要是通過測(cè)試程序的限制來進(jìn)行服務(wù)器通信方式的規(guī)范,從而實(shí)現(xiàn)處理過程中信息的傳遞能夠?qū)崿F(xiàn)快速、安全。再者,關(guān)注兩者之間的信息交互,并且提供了一次性的交互消息內(nèi)容,對(duì)服務(wù)器的建設(shè)來說也具有很重要的意義。因?yàn)樵趯?shí)際的建設(shè)過程中,服務(wù)器的使用是一個(gè)比較系統(tǒng)化的過程,所以Soap的應(yīng)用能夠有效地進(jìn)行相關(guān)方面的控制,保證在實(shí)際的操作過程中,服務(wù)器、軟件之間的交互是正常的。
Web服務(wù)的基本模型除了應(yīng)用邏輯層的分布程序外,還提出了網(wǎng)絡(luò)中心各種外部協(xié)同工作的完成程序,這樣就可以使各種服務(wù)在一個(gè)比較合理的平臺(tái)上采用不同的編程語言進(jìn)行處理,進(jìn)而能夠比較方便地找到各種處理的優(yōu)點(diǎn),從而實(shí)現(xiàn)最大化的商業(yè)價(jià)值。對(duì)于整個(gè)程序而言,各種應(yīng)用程序在實(shí)際的應(yīng)用過程中,用戶在瀏覽網(wǎng)頁或者開展其他活動(dòng)時(shí),需要進(jìn)行一定的服務(wù)請(qǐng)求,這就需要驗(yàn)證設(shè)計(jì)中軟件的正確性,這不單單靠Web服務(wù)的正確性來決定,更要求在服務(wù)器之間的交互上進(jìn)行一定的處理。
在Web服務(wù)程序中錯(cuò)誤的出現(xiàn)不僅僅是因?yàn)槿藶榈囊恍┦д`造成的,還有一些其他原因,主要是分布式自身的問題。因?yàn)檫@一結(jié)構(gòu)的存在和出現(xiàn),經(jīng)歷的時(shí)間不長,所以它的一些相關(guān)理論還不是很成熟,再加上實(shí)際的應(yīng)用,進(jìn)而使分析過程可能會(huì)出現(xiàn)一些小的偏差,這也是出現(xiàn)問題的一個(gè)原因。這些問題最終會(huì)導(dǎo)致通訊過程出現(xiàn)一些信息的交互錯(cuò)誤,這樣就可能導(dǎo)致實(shí)際軟件使用過程中出現(xiàn)一定的漏洞或者是負(fù)載超量現(xiàn)象。
在處理實(shí)際問題時(shí),信息的傳遞順序是至關(guān)重要的,一旦出現(xiàn)了順序上的差異,那么就會(huì)導(dǎo)致問題的出現(xiàn)。再者,消息在傳遞的過程中,可能會(huì)經(jīng)過很多系統(tǒng),最后才傳遞到實(shí)際的使用者手中。如果這些系統(tǒng)的相關(guān)參數(shù)設(shè)計(jì)或者是分布式結(jié)構(gòu)之間存在沖突,那么在信息到達(dá)時(shí)可能會(huì)出現(xiàn)很多可能,多種可能的出現(xiàn)就會(huì)導(dǎo)致系統(tǒng)的運(yùn)算量增大,從而使得系統(tǒng)出現(xiàn)崩潰或者是卡頓。
目前的接口技術(shù),主要是針對(duì)實(shí)際應(yīng)用過程中,在信息到達(dá)接口時(shí),需要對(duì)信息進(jìn)行一定的判別,然后才能響應(yīng)相關(guān)的操作,這也是當(dāng)前程序結(jié)構(gòu)中大量使用子程序調(diào)用的原因。所以中間過程中出現(xiàn)的錯(cuò)誤就可能導(dǎo)致系統(tǒng)或者軟件的運(yùn)行出現(xiàn)崩盤,這樣就可能導(dǎo)致上面各種服務(wù)信息出現(xiàn)錯(cuò)誤。
差異性分布式檢測(cè)是一個(gè)比較科學(xué)的處理方法,因?yàn)檫@樣就能夠逐一排查實(shí)現(xiàn)系統(tǒng)的整體性保障,從而使得在進(jìn)行軟件的檢測(cè)時(shí)能夠?qū)ο⒂羞M(jìn)一步的控制,使得在實(shí)際的相關(guān)分析中,能夠更好地把握當(dāng)前程序的特征,從而作出有針對(duì)性的診斷。在控制測(cè)試過程中,主要是捕捉服務(wù)器之間的通訊記錄,并且對(duì)這一記錄所帶來的信息格式進(jìn)行分析,這樣就能夠保證在通訊消息傳播過程中有更多的控制權(quán),對(duì)消息轉(zhuǎn)發(fā)或者是負(fù)載壓力等測(cè)試,就能夠更快地發(fā)現(xiàn)分布式結(jié)構(gòu)之間的錯(cuò)誤。
Soap協(xié)議因?yàn)樽陨淼谋憬菪?,使得它能夠適應(yīng)分布式結(jié)構(gòu)對(duì)信息傳輸速度的要求,并且能夠?qū)崿F(xiàn)一些步驟的簡化,從而保障整體的服務(wù)能力和運(yùn)行狀態(tài)在一個(gè)比較好的環(huán)境下。再者,由于其自身在不同異構(gòu)平臺(tái)之間的消息傳遞有協(xié)同作用,可以使得在實(shí)際的通訊過程中,能夠突破平臺(tái)之間的限制,從而實(shí)現(xiàn)比較好的通訊效果。
因?yàn)镾oap總是通過網(wǎng)絡(luò)傳輸協(xié)議來進(jìn)行傳輸?shù)?,所以它雖然借助一些比較常見的網(wǎng)絡(luò)協(xié)議來進(jìn)行相關(guān)的處理,但是在自身的實(shí)際處理過程中,可能會(huì)出現(xiàn)一些形式上的變化,主要是因?yàn)楫?dāng)前的一些網(wǎng)絡(luò)協(xié)議在企業(yè)之間的通訊問題結(jié)局上還存在著一定的問題,所以Soap協(xié)議對(duì)此作了改進(jìn),使得通訊的要求能夠得到滿足??梢?,Soap協(xié)議也是比較適合企業(yè)之間通訊的。但是,有的Soap通訊機(jī)制比較簡單,因?yàn)樗幚淼氖聞?wù)和所要傳遞的消息并沒有上面所述的那么復(fù)雜,所以并不需要完全形成分布式的系統(tǒng)結(jié)構(gòu),可以在實(shí)際的建設(shè)過程中對(duì)一定的部分進(jìn)行精簡,只要能夠完成它所需要的基本功能即可。一些比較常見的簡單Soap通訊機(jī)制主要包括以下2類:①pc方式調(diào)用,它采用的是直接調(diào)用Web服務(wù)的方式,這樣就可以有一個(gè)比較簡短的通訊過程,從而實(shí)現(xiàn)結(jié)構(gòu)的快速回調(diào)。②消息機(jī)制,它可以通過傳遞和接收這種方式來實(shí)現(xiàn)進(jìn)程之間的聯(lián)系,保證在實(shí)際的通訊過程中,能夠?qū)崿F(xiàn)交互異步,使得通訊更加迅捷和安全。
一個(gè)程序中通常采用的是Master模式,因?yàn)檫@不僅僅是一個(gè)程序,它可以實(shí)現(xiàn)對(duì)自身源代碼的被控對(duì)象進(jìn)行實(shí)時(shí)檢測(cè),這樣不僅僅為外界提供了接口,有一個(gè)比較好的檢測(cè),還能夠使得在該模型中所設(shè)計(jì)的分布式程序有一個(gè)雙向的測(cè)試。我們可以把它視為一種運(yùn)行時(shí)的需求,這樣就可以從不同的方面進(jìn)行檢測(cè),對(duì)不可控的Web服務(wù)和網(wǎng)絡(luò)服務(wù)進(jìn)行一定的綜合分析,從而保證在軟件的運(yùn)行過程中有一個(gè)比較好的測(cè)試結(jié)果。
Web服務(wù)軟件測(cè)試系統(tǒng)的結(jié)構(gòu)原理主要是在數(shù)據(jù)層和負(fù)責(zé)獲取相關(guān)的系統(tǒng)調(diào)用,在管理層對(duì)通訊的有關(guān)信息進(jìn)行進(jìn)化與抽離,充分填充所需要的數(shù)據(jù)模型,精確控制系統(tǒng)通訊過程中所需要的關(guān)鍵字,這樣就可以在比較合理的情況下重演整個(gè)服務(wù)過程。再者,可以使得控制信息通過用戶的充分利用來進(jìn)行相關(guān)的內(nèi)容修改,這樣就可以使得控制過程實(shí)現(xiàn)精確的定位和處理。另外,可以通過這種虛擬化的處理,使外包服務(wù)的壓力和負(fù)載測(cè)試能夠在一個(gè)比較合理的范圍內(nèi)進(jìn)行。
基于Soap協(xié)議的Web服務(wù)軟件性能測(cè)試的方法把重點(diǎn)放在了Web服務(wù)器間的通信上,因?yàn)橹挥型ㄟ^這一通訊過程,才能對(duì)服務(wù)總體進(jìn)行抽象化的圖形處理,這種手段也可以直觀地幫助用戶發(fā)現(xiàn)通訊過程中所傳達(dá)信息的錯(cuò)誤。但是,要想使測(cè)試過程更加科學(xué)和精確,還需要對(duì)許多技術(shù)作進(jìn)一步研究。
[1]徐亮亮,宋劍鋒,田飛.面向服務(wù)的輔助集成測(cè)試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)光盤軟件與應(yīng)用,2014(24):81-84.
[2]鄭雷雷,宋麗華,郭銳,等.B/S架構(gòu)軟件的安全性測(cè)試研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2012(01):221-224.
[3]馬勝男,孫翊,陳玉忠,等.軟件測(cè)試與Web服務(wù)測(cè)試研究進(jìn)展[J].標(biāo)準(zhǔn)科學(xué),2009(09):81-88.
〔編輯:劉曉芳〕
TP311.52
A
10.15913/j.cnki.kjycx.2017.18.102
2095-6835(2017)18-0102-02