原創(chuàng)|行業(yè)資訊|編輯:鄭恭琳|2021-01-29 11:46:43.823|閱讀 354 次
概述:即使最小的物聯(lián)網(wǎng)設(shè)備也生活在復(fù)雜的環(huán)境中,在開發(fā)時可能無法完全理解。實(shí)際上,我們已經(jīng)看到了與設(shè)備首次連接到Internet相關(guān)的安全問題。在上一篇文章中,我們討論了面向服務(wù)的設(shè)計(jì),開發(fā)和測試的好處。在本文中,我們將把基于服務(wù)的測試和服務(wù)虛擬化帶到下一步-虛擬實(shí)驗(yàn)室。建立一個現(xiàn)實(shí)的物理測試實(shí)驗(yàn)室環(huán)境非常困難,即使完成后,它也成為系統(tǒng)測試的主要瓶頸。虛擬實(shí)驗(yàn)室消除了這一瓶頸,同時為基于服務(wù)的物聯(lián)網(wǎng)設(shè)備測試提供了新的優(yōu)勢。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
即使最小的物聯(lián)網(wǎng)設(shè)備也生活在復(fù)雜的環(huán)境中,在開發(fā)時可能無法完全理解。實(shí)際上,我們已經(jīng)看到了與設(shè)備首次連接到Internet相關(guān)的安全問題。在上一篇文章中,我們討論了面向服務(wù)的設(shè)計(jì),開發(fā)和測試的好處。在本文中,我們將把基于服務(wù)的測試和服務(wù)虛擬化帶到下一步-虛擬實(shí)驗(yàn)室。建立一個現(xiàn)實(shí)的物理測試實(shí)驗(yàn)室環(huán)境非常困難,即使完成后,它也成為系統(tǒng)測試的主要瓶頸。虛擬實(shí)驗(yàn)室消除了這一瓶頸,同時為基于服務(wù)的物聯(lián)網(wǎng)設(shè)備測試提供了新的優(yōu)勢。
最近的一項(xiàng)研究發(fā)現(xiàn),尚未對80%的IoT應(yīng)用進(jìn)行安全缺陷測試。巴爾小組發(fā)現(xiàn),有56%的嵌入式設(shè)備開發(fā)人員沒有審查源代碼中的安全漏洞,而37%的人沒有書面的編碼標(biāo)準(zhǔn)。這些數(shù)據(jù)并不令人鼓舞,而且很明顯,IoT設(shè)備制造商需要更加重視質(zhì)量,保障性和安全性。測試自動化是重要的一步,可確保更嚴(yán)格,一致和徹底地進(jìn)行測試。測試,尤其是針對安全漏洞的測試,通常被認(rèn)為過于昂貴和復(fù)雜,因此被匆忙或完全忽略了。但是,讓您的客戶(和攻擊者)為您測試IoT設(shè)備安全性是一個代價(jià)高昂的錯誤。
真正的測試實(shí)驗(yàn)室需要與IoT設(shè)備計(jì)劃在其中工作的環(huán)境最接近的物理表現(xiàn)形式,但是即使在最復(fù)雜的實(shí)驗(yàn)室中,也很難將其擴(kuò)展到實(shí)際環(huán)境。虛擬實(shí)驗(yàn)室可以解決此問題。虛擬實(shí)驗(yàn)室的發(fā)展已經(jīng)超越了對難以發(fā)現(xiàn)(或可能不存在)的硬件依賴的需求。將復(fù)雜的服務(wù)虛擬化與其他關(guān)鍵測試自動化工具結(jié)合使用:
服務(wù)虛擬化模擬被測設(shè)備所需的所有依賴關(guān)系,以執(zhí)行完整的系統(tǒng)測試。這包括設(shè)備使用的所有連接和協(xié)議,以及對通信的真實(shí)響應(yīng)。例如,服務(wù)虛擬化可以模擬IoT設(shè)備與之通信的企業(yè)服務(wù)器后端,以提供定期的傳感器讀數(shù)。同樣,虛擬化可以以現(xiàn)實(shí)的方式控制IoT設(shè)備。
服務(wù)和API測試提供了一種方式來驅(qū)動被測設(shè)備,以確保其提供的服務(wù)(和提供的API)能夠完美執(zhí)行。這些測試可以通過自動化平臺進(jìn)行操作,以根據(jù)需要執(zhí)行性能和安全性測試。
運(yùn)行時監(jiān)視實(shí)時檢測被測設(shè)備上的錯誤,并捕獲重要的跟蹤信息。例如,可以在價(jià)格低廉的情況下及早發(fā)現(xiàn)并解決在成品中無法發(fā)現(xiàn)的內(nèi)存泄漏。
測試實(shí)驗(yàn)室管理和分析提供對虛擬實(shí)驗(yàn)室的總體控制。虛擬化后,可以根據(jù)需要復(fù)制整個實(shí)驗(yàn)室設(shè)置,并且可以自動重復(fù)測試運(yùn)行。分析提供活動和結(jié)果的必要摘要。
邊緣計(jì)算物聯(lián)網(wǎng)生態(tài)系統(tǒng)如下圖1所示,描繪了部署嵌入式物聯(lián)網(wǎng)設(shè)備的典型環(huán)境。傳感器和控制設(shè)備將信息傳遞給Edge,Edge是一系列設(shè)備或應(yīng)用程序,可以接收信息并使用邏輯來與設(shè)備進(jìn)行通信,或與云進(jìn)行通信。然后,云具有允許它根據(jù)該信息采取行動的高層邏輯。云是一組服務(wù)(微服務(wù)、數(shù)據(jù)庫連接、附加邏輯或第三方服務(wù)),是功能構(gòu)建塊的復(fù)雜網(wǎng)絡(luò),如右圖所示。
圖1:將在其中部署嵌入式設(shè)備的典型物聯(lián)網(wǎng)生態(tài)系統(tǒng)
當(dāng)需要在IoT生態(tài)系統(tǒng)中進(jìn)行測試時,需要進(jìn)行多層測試。例如,要測試網(wǎng)關(guān)中引入的新功能,請驗(yàn)證網(wǎng)關(guān)是否可以從傳感器接收信息,并以您構(gòu)建業(yè)務(wù)邏輯的方式進(jìn)行交流。
為了驗(yàn)證所有這些復(fù)雜性,使用了Parasoft Virtualize(模擬所需的依賴性)和Parasoft SOAtest(驅(qū)動測試)來模擬這些輸入。這些工具可模擬來自網(wǎng)絡(luò)上設(shè)備的實(shí)際呼叫(無論它們是諸如REST/HTTP之類的協(xié)議,還是諸如IoT流行的協(xié)議(如CoAP,XMPP或MQTT之類)),并測試被測設(shè)備(此示例中的網(wǎng)關(guān))通過驗(yàn)證從SOAtest返回的響應(yīng),與云服務(wù)進(jìn)行了適當(dāng)?shù)耐ㄐ拧O旅娴膱D2顯示了如何為受測邊緣設(shè)備創(chuàng)建虛擬實(shí)驗(yàn)室環(huán)境的示例。
如果有將信息傳達(dá)到該網(wǎng)關(guān)的外部方法,則也可以模擬這些呼叫。Parasoft Virtualize旨在穩(wěn)定測試環(huán)境,對利用SOAtest的測試數(shù)據(jù)的請求創(chuàng)建可預(yù)測的響應(yīng),從而全面測試網(wǎng)關(guān)和服務(wù)。
最后,頂級服務(wù)可能正在與邊緣進(jìn)行通信,并與其他傳感器和外部參與者進(jìn)行通信,因此了解來自您的輸入的流量正在通過環(huán)境返回后端系統(tǒng)的過程可能很重要。Parasoft Virtualize用于模擬從邊緣(到IoT設(shè)備)的那些呼叫的接收,然后將該信息中繼回SOAtest,以確認(rèn)該呼叫進(jìn)行了往返并按照IoT生態(tài)系統(tǒng)內(nèi)的預(yù)期方式運(yùn)行。Parasoft Virtualize和SOAtest的結(jié)合提供了完全控制,以測試整個環(huán)境,即使是在IoT生態(tài)系統(tǒng)的復(fù)雜性內(nèi)也是如此。
圖2:Parasoft的Virtualize和SOAtest工具的作用為被測邊緣設(shè)備創(chuàng)建了虛擬實(shí)驗(yàn)室環(huán)境
正常的測試環(huán)境非常昂貴,可能超出大多數(shù)開發(fā)經(jīng)理的預(yù)期。voke Research的一項(xiàng)研究發(fā)現(xiàn),在生產(chǎn)前實(shí)驗(yàn)室的平均投資為1200萬美元。在時間方面,配置實(shí)驗(yàn)室的平均時間為18天,另外12-14天用于配置。這些實(shí)驗(yàn)室的建立需要花費(fèi)大量時間和金錢,即使在那之后,由于訪問受限,它們也成為測試的瓶頸。此外,物理實(shí)驗(yàn)室的日常運(yùn)營成本非常高。在大多數(shù)情況下,復(fù)制物理實(shí)驗(yàn)室以提高測試吞吐量非常昂貴。
在另一篇文章中,我們將服務(wù)虛擬化的好處歸結(jié)為通過更好地控制虛擬化依賴項(xiàng)的行為來改善對測試設(shè)備的訪問,從而降低了成本并提高了測試速度。讓我們以類似的方式來分解虛擬物聯(lián)網(wǎng)測試實(shí)驗(yàn)室的好處:
通過更好,更完整的測試提高質(zhì)量
基于服務(wù)的測試可確保關(guān)鍵用例得到練習(xí)和完善。自動化的性能測試可確保重負(fù)載下的穩(wěn)定性和可靠性。此外,運(yùn)行時監(jiān)視可確保檢測和跟蹤難以發(fā)現(xiàn)的錯誤。
通過自動滲透測試(模擬格式錯誤的數(shù)據(jù))提高了安全性
負(fù)載測試可以模擬拒絕服務(wù)攻擊,運(yùn)行時監(jiān)視可以檢測安全漏洞。測試的可重復(fù)性可確保以完全相同的方式測試每個迭代、補(bǔ)丁或發(fā)行。此外,簡化了測試開發(fā)和操作(即改進(jìn)和創(chuàng)建新測試)。
通過消除完整系統(tǒng)測試所需的昂貴依賴項(xiàng),減少測試時間、風(fēng)險(xiǎn)和成本
自動化提供了手動測試無法實(shí)現(xiàn)的可重復(fù)性和一致性,同時提供了更好,更完整的測試。虛擬實(shí)驗(yàn)室大大減少了物理實(shí)驗(yàn)室設(shè)置所需的準(zhǔn)備時間,從而影響了總測試時間。
考慮到IoT設(shè)備開發(fā)的狀態(tài),需要對開發(fā)和測試流程進(jìn)行更改。測試自動化是一種行之有效的降低成本和風(fēng)險(xiǎn)的方法。物聯(lián)網(wǎng)設(shè)備質(zhì)量和安全性改善的下一個重大步驟是使用虛擬實(shí)驗(yàn)室,這些虛擬實(shí)驗(yàn)室將服務(wù)虛擬化,基于服務(wù)的測試,虛擬實(shí)驗(yàn)室管理和運(yùn)行時監(jiān)視相結(jié)合。這大大降低了配置和配置成本,同時極大地提高了所執(zhí)行測試的質(zhì)量。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn