什麼是軟體測試中的互操作性測試?
互操作性測試的快速概述
互操作性定義為 inter 和 operable 兩個詞的組合。
Inter 意為“在我們之間”、“在我們內部”或“相互的”。
Operability 指的是一個人完成任務的能力。
結合這兩個概念,互操作性是指兩個(或多個)系統能夠獨立地完成其分配的任務,同時根據預期相互通訊,而不會影響其獨特的分配功能。
考慮預訂航班的情況。考慮以下場景:您需要從新德里前往紐約。目前沒有直達航班。您必須從新德里飛往倫敦,然後從倫敦搭乘聯運航班飛往紐約。由於時間限制,您使用“捷特航空”預訂了從新德里到倫敦的機票,並使用“維珍航空”預訂了從倫敦到紐約的行程。因此,您的所有個人資訊都已從捷特航空傳輸到維珍航空。
因此,捷特航空和維珍航空都是獨立的應用程式,當您購買航班時,您的預訂資訊以有意義的方式從捷特航空傳送到維珍航空,無需事先通知。
考慮醫院管理系統,其中涉及將患者資訊從一個部門傳輸到下一個部門。因此,在這種情況下,一個部門可以連結到一個應用程式。在沒有通知的情況下,患者的資訊會從一個應用程式傳輸到另一個應用程式。
那麼,我們為什麼要進行物聯網呢?
需要進行互操作性測試以確保
網路的應用程式獨立地滿足其預期行為,並且它們可以無需警告地通訊資訊。
資訊/資料在傳輸過程中不會干擾個體的預期行為。
傳輸的資料或資訊不會以任何方式更新或更改。
如何最佳地進行互操作性測試?
要進行互操作性測試,我們可以使用 PDCA 迴圈(戴明環)。
1) 制定策略。
在定義幾乎所有軟體開發內容的方法時,計劃是最重要的方面。在定義進行物聯網測試的方法之前,我們必須首先了解已安裝在網路中的每個應用程式或系統。
我們應該瞭解所有應用程式的功能、行為、它接受的輸入以及它產生的輸出。在準備應用程式進行互操作性測試之前,我還建議對其進行徹底的功能測試,確保沒有缺陷。因此,在計劃時,不要只考慮一兩個應用程式;將它們都視為一個統一的單元。在計劃這種測試方法時,您需要擁有全域性視角。不用說,您應該記錄您的策略。
我們可以採用我們常規的測試計劃文件並對其進行一些調整,以滿足記錄 IOT 計劃的需求。建立測試策略後,就可以開始建立測試條件了。您的測試條件的重點不應放在單個應用程式上,而應放在資料流經所有應用程式的過程上。應以大多數(如果不是全部)網路應用程式都經過的方式設定條件。
定義測試條件後,就可以開始設計或編寫測試用例(如果要自動化)。您可以使用 RTM(需求跟蹤矩陣)將測試用例對映到測試條件,並將測試條件對映到驗收測試條件/需求。在處理網路時,規劃非功能測試至關重要。即使在任何地方都沒有提及或記錄,也必須檢查整個系統的非功能方面。非功能領域包括效能和安全性。
提前計劃執行功能和非功能測試。如有必要,可以為功能、效能和安全測試建立單獨的計劃,或者為每個測試類別建立單個計劃和包含測試條件的單獨文件。
2) 採取行動
執行 – 是您實際執行計劃所花費的時間。提前計劃執行功能和非功能測試。在此步驟中,我們透過執行用例、記錄缺陷、與開發團隊跟進以解決缺陷、重新測試和迴歸測試整個系統、報告測試結果並關閉測試來完成測試周期。
3) 複查
檢查 – 在此階段,我們檢查測試結果並嘗試將其對映到 RTM,確保已滿足所有必要條件並且所有應用程式都已探索。我們確保資料被準確地遍歷並在應用程式/系統之間移動。
我們還需要確保正在遍歷的資料不會被更改
考慮對整個互操作性測試過程進行回顧。確定哪些方面進展順利,哪些方面沒有進展順利,以及需要處理的任何行動專案。
4) 行動
行動 - 是對過去的事情采取行動。繼續執行被認定為“最佳實踐”的要點,並確定改進可能改進的要點的措施並採取適當的行動。重要的是要記住,不應重複那些效果不佳的區域或方法。畢竟,我們應該從錯誤中吸取教訓,避免重複犯錯。
5 1/2 個步驟如下所示 -
確定哪些應用程式連線到網路。
確定它們各自的功能。
確定每個應用程式接受的輸入和產生的輸出。
確定哪些資料將透過所有或大多數應用程式傳送。
確定每個應用程式和日期組合的預期響應,該響應必須經過驗證 1/2 記錄下來。
為什麼要進行互操作性測試?
進行互操作性測試是因為,
它保證了跨越來自不同供應商的兩個或多個產品的端到端服務。
軟體產品應該能夠在沒有任何相容性問題的情況下與其他元件或裝置連線。
不進行互操作性測試的風險很多。
資訊丟失
不可預測的結果
不可靠的操作
操作錯誤
維護能力低
互操作性測試示例測試用例
互操作性測試的測試策略包括以下步驟 -
將來自不同製造商的兩個或多個裝置連線在一起。
驗證裝置是否已連線。
檢查裝置是否可以彼此傳輸和接收資料包或幀,以及資料在網路和設施級別是否得到正確處理。
驗證您構建的演算法是否正常工作。
如果結果令人滿意,請轉到下一步。
結果不令人滿意:使用監控工具檢測問題的原因,並在測試報告工具中提交結果。
互操作性測試的缺點
互操作性測試有許多缺點。
識別問題根源
精確測量
測試可擴充套件性 網路複雜性
裝置測試
跟蹤測試結果和經驗教訓
規範不足
移動互操作性測試
當釋出新的應用程式(移動應用程式)時,我們會進行互操作性測試。在計劃對移動裝置進行此測試時,需要考慮許多因素 -
市場上可用的移動裝置種類繁多。您需要列出所有正在考慮用於測試的裝置。您需要將裝置型別與它支援的作業系統關聯起來。
所有移動作業系統都使用不同的程式語言編寫。因此,必須在所有作業系統版本中測試該程式。
瞭解特定於該位置的法律方面以及合同。
不同的裝置具有不同的尺寸和解析度。
還必須解決內建應用程式對移動裝置的影響。
因此,就像我們為基於計算機的應用程式測試所做的那樣,您需要為移動裝置上的 IOT 設計和開發 RTM。
在移動裝置的情況下,目標、策略、風險和執行都將相同,但工具和方法將有所不同。
挑戰
測試所有應用程式的所有排列和組合都很困難。
應用程式使用各種硬體/軟體組合建立並在各種環境中安裝,因此如果其中一個環境出現故障,測試就會受到影響。
由於軟體和環境眾多,決定測試策略並將其付諸實施本身就是一個複雜的過程。
很難建立一個模擬環境來進行考試。
在發生故障時進行根本原因分析是一項艱鉅的任務。
由於應用程式位於網路中,因此網路將有時會宕機。這也損害了測試。
總結
互操作性測試是一種軟體工程型別,它檢查軟體是否可以與另一塊軟體通訊。
它保證軟體產品能夠與其他元件或裝置連線,而不會遇到任何相容性問題。
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP