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