原創(chuàng)|行業(yè)資訊|編輯:鄭恭琳|2021-03-16 14:33:38.470|閱讀 99 次
概述:由于當(dāng)今應(yīng)用程序的復(fù)雜性,很容易遇到無法同時準(zhǔn)備好所有代碼的情況。作為開發(fā)人員,您可能在等待第三方API的更新,合作伙伴組織完成其代碼或組織中的其他團隊準(zhǔn)備開始進行測試的組件。這可能會拖累組織的整個發(fā)布時間表,因為備份了測試以等待所有工作完成。 設(shè)計服務(wù)虛擬化就是考慮到這一點。通過模擬您否則會丟失或等待的相關(guān)組件,它為開發(fā)和測試團隊提供了不受限制地訪問完整測試環(huán)境的權(quán)限。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
由于當(dāng)今應(yīng)用程序的復(fù)雜性,很容易遇到無法同時準(zhǔn)備好所有代碼的情況。作為開發(fā)人員,您可能在等待第三方API的更新,合作伙伴組織完成其代碼或組織中的其他團隊準(zhǔn)備開始進行測試的組件。這可能會拖累組織的整個發(fā)布時間表,因為備份了測試以等待所有工作完成。
設(shè)計服務(wù)虛擬化就是考慮到這一點。通過模擬您否則會丟失或等待的相關(guān)組件,它為開發(fā)和測試團隊提供了不受限制地訪問完整測試環(huán)境的權(quán)限。
在敏捷環(huán)境中,開發(fā)人員可以在互連的系統(tǒng)組件上的所有代碼庫中同時工作。每個開發(fā)人員都需要訪問其他開發(fā)人員的組件才能完成自己的任務(wù)。通常,我們會遇到這樣的情況:一個開發(fā)人員在項目早期就需要另一個開發(fā)人員的組件或API的響應(yīng),有時甚至這么早,以至于另一位開發(fā)人員甚至沒有創(chuàng)建正在被調(diào)用的代碼。這意味著一個或兩個開發(fā)人員將被卡住,直到兩段代碼都完成為止。在軟件中,我們稱其為死鎖。
在編寫代碼時,我經(jīng)常面臨這個挑戰(zhàn)。我的團隊可能正在開發(fā)面向客戶的Web應(yīng)用程序,每個沖刺都包含一組新的用戶案例,以根據(jù)我從REST API獲得的數(shù)據(jù)來實現(xiàn)功能。而且?guī)缀趺刻煳叶紩萑肜Ь常瑹o法在我的應(yīng)用程序代碼上工作,因為我所依賴的API之一未處于工作狀態(tài)。這可能有多種原因,但這通常與我的一位同事在使用API時在其代碼中的某個地方引入錯誤有關(guān)。
這樣做的最大問題是,我必須在截止日期之前完成,而我的經(jīng)理希望我在sprint結(jié)束時使用此代碼。因此,我通常要做的就是走到同事的辦公桌旁,與他們一起仔細(xì)閱讀他們的代碼,以幫助解決他們面臨的挑戰(zhàn)。 (這太好了……我們正在與開發(fā)人員合作……真是難得一見!)但是不幸的是,最終發(fā)生的事情是,我花了大部分時間調(diào)試他們的問題,以使自己不受阻礙。這意味著他們按時完成了代碼,而我沒有按時完成。
等待訪問相關(guān)功能會限制敏捷性。我應(yīng)該如何在這些條件下工作?答案是模擬。我可以使用Service Virtualization擺脫這些僵局,并快速構(gòu)建一個虛擬資產(chǎn),該虛擬資產(chǎn)實際上模擬任何預(yù)期的行為。
我將使用Parasoft Virtualize向您展示如何執(zhí)行此操作(您現(xiàn)在可以在新的Community Edition中免費使用它)。您可以在GUI中或從類似WSDL的定義文件中創(chuàng)建腳本,而無需執(zhí)行任何腳本。例如,在API開發(fā)的早期階段,WSDL或架構(gòu)可能不可用,而開發(fā)人員可能僅提供了示例響應(yīng)。使用Virtualize,這已經(jīng)足夠上手。我只是抓住響應(yīng)對象并將其粘貼到響應(yīng)者中。然后,我可以撥動開關(guān),該工具將即時創(chuàng)建一個架構(gòu)。這非常有用,因為我不必擔(dān)心發(fā)送正確的有效負(fù)載,并且隨著數(shù)據(jù)的變化,Virtualize將確保每次發(fā)送響應(yīng)時有效負(fù)載結(jié)構(gòu)保持一致。這使得模擬響應(yīng)非常容易。端點是自動設(shè)置的,并且始終可用。我只需要關(guān)注我希望新響應(yīng)發(fā)送的數(shù)據(jù)。借助Virtualize,您還可以可視化地對各種消息格式進行建模,例如XML,JSON,以及各種舊式,財務(wù),醫(yī)療保健和其他特定于域的格式。
以這種方式處理模擬響應(yīng)有很多優(yōu)點,其中最重要的是時間。只需數(shù)分鐘即可建立一個簡單的服務(wù)響應(yīng),而等待真實服務(wù)的天數(shù)就可以設(shè)置。這使我可以立即開始工作,做出響應(yīng)以進行開發(fā),并立即看到對其新代碼的影響。這可以幫助我更聰明,更快速地編寫代碼,因為通常無法預(yù)測的條件可以立即進行測試,并且可以實時調(diào)整功能。
這正是我要使自己擺脫等待周期的方法。當(dāng)其中一個后端API出現(xiàn)故障時,我將使用服務(wù)虛擬化來模擬響應(yīng)。我可以放入任何想要的有效負(fù)載,并且我知道它是準(zhǔn)確的,因為我使用了定義。我也有信心,因為我會控制一切,它將為我提供正確的數(shù)據(jù)。使用這項技術(shù)使我能夠按時完成任務(wù)。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn