新四季網

RPC接口測試方法及系統與流程

2023-06-06 13:03:41 1

本發明涉及RPC(Remote Procedure Call Protocol,遠程過程調用協議,通過網絡從遠程電腦程式上請求服務,而不需要了解底層網絡技術的協議)接口測試領域,具體涉及一種RPC接口測試方法及系統。



背景技術:

接口測試(對系統組件間接口進行測試)主要用於檢測外部系統與系統(包括各個子系統)之間的交互點,接口測試重點為檢查數據的交換、傳遞和控制管理過程,以及系統間的相互邏輯依賴關係等。

目前,Web測試中的接口測試主要關注前端服務中基於http協議的post(傳送數據)和get(獲取數據)請求,而對後端服務中較通用的RPC接口測試研究不多,RPC接口的測試方法尚無,進而會使得RPC服務使用時存在以下缺陷:

RPC服務在創建和初期使用時出現的問題比較隱蔽,無法及時修復,若該問題在RPC服務完善後再來修復,則會重新大幅度修整RPC服務,不僅操作過程比較複雜,而且修復成本較高。



技術實現要素:

針對現有技術中存在的缺陷,本發明解決的技術問題為:提供一種RPC接口測試方法及系統,本發明能夠在RPC服務出現問題時及時發現並修復,簡化了後期的操作過程和維修成本。

為達到以上目的,本發明提供的RPC接口測試方法,包括以下步驟:

S1:在伺服器上建立Socket連接,通過Socket與RPC接口進行通信,讀取預先設置的RPC服務的伺服器配置信息、測試數據配置文件和資料庫配置文件,轉到S2;

所述伺服器配置信息包括用於寫入RPC調用語言的命令行終端和公共RPC的調用方法;

S2:運行測試所需的驅動數據後,加載所述測試數據配置文件和資料庫配置文件,通過公共RPC的調用方法在伺服器上進行RPC服務登錄,轉到S3;

S3:在命令行終端上寫入測試數據配置文件的測試參數,根據測試參數進行測試。

在上述技術方案的基礎上,S3中所述根據測試參數進行測試的具體流程為:讀取測試數據配置文件中預先定義的不正確或正確的用戶數據;執行S3的過程中,若出現異常,則捕獲異常信息。

在上述技術方案的基礎上,S3之後還包括以下步驟:根據預先設置的測試場景恢復配置,進行測試場景恢復。

在上述技術方案的基礎上,S1中所述通過Socket與RPC接口進行通信之後,還包括以下步驟:讀取預先設置的Socket的伺服器配置信息。

在上述技術方案的基礎上,S1中所述伺服器配置信息還包括伺服器ip、RPC服務的埠號和RPC服務的消息碼。

本發明提供的實現上述方法的RPC接口測試系統,包括測試連接建立模塊、測試驅動登陸模塊和RPC接口測試模塊;

測試連接建立模塊用於:在伺服器上建立Socket連接,通過Socket與RPC接口進行通信,讀取預先設置的RPC服務的伺服器配置信息、測試數據配置文件和資料庫配置文件,向測試驅動登陸模塊發送測試驅動登陸信號;

所述伺服器配置信息包括用於寫入RPC調用語言的命令行終端和公共RPC的調用方法;

測試驅動登陸模塊用於:收到測試驅動登陸信號後,運行測試所需的驅動數據,加載所述測試數據配置文件和資料庫配置文件,通過公共RPC的調用方法在伺服器上進行RPC服務登錄,向RPC接口測試模塊發送RPC接口測試信號;

RPC接口測試模塊用於:收到RPC接口測試信號後,在命令行終端上寫入測試數據配置文件的測試參數,根據測試參數進行測試。

在上述技術方案的基礎上,所述RPC接口測試模塊根據測試參數進行測試的具體流程為:讀取測試數據配置文件中預先定義的不正確或正確的用戶數據;測試過程中,若出現異常,則捕獲異常信息。

在上述技術方案的基礎上,該系統還包括測試測試場景恢復模塊,其用於:在RPC接口測試模塊測試完成後,根據預先設置的測試場景恢復配置,進行測試場景恢復。

在上述技術方案的基礎上,所述測試連接建立模塊通過Socket與RPC接口進行通信之後,還包括以下工作流程:讀取預先設置的Socket的伺服器配置信息。

在上述技術方案的基礎上,所述測試連接建立模塊讀取的伺服器配置信息,還包括伺服器ip、RPC服務的埠號和RPC服務的消息碼。

與現有技術相比,本發明的優點在於:

本發明根據自行創造的測試方式,能夠完成RPC接口的測試,進而使得RPC服務出現問題時能夠及時發現並修復,簡化了後期的操作過程和維修成本。

附圖說明

圖1為本發明實施例中RPC接口測試方法的流程圖。

具體實施方式

以下結合附圖及實施例對本發明作進一步詳細說明。

本發明實施例中的RPC接口測試方法,借鑑了數據驅動的測試自動化思想(以數據來控制自動化測試的流程和動作的測試,其中數據是獨立於測試用例腳本的,通常以文本文件形式、Excel文件形式、XML文件等形式存在),以Python語言(面向對象、解釋型電腦程式設計語言)為主實現了後端伺服器的Socket通信和RPC調用,並結合軟體測試中的邊界值、等價類、正交試驗設計等方法編寫接口測試用例。

其中Socket通信通常也稱作"套接字",用於描述IP位址和埠,是一個通信鏈的句柄,可以用來實現不同虛擬機或不同計算機之間的通信。在Internet上的主機一般運行了多個服務軟體,同時提供幾種服務。每種服務都打開一個Socket,並綁定到一個埠上,不同的埠對應於不同的服務。

本發明實施例進行RPC接口測試之前,需要實現與後端伺服器的Socket進行通信、以及通過Python語言調用具體的RPC服務(RPC接口承載的是RPC服務)。

與後端伺服器的Socket進行通信的流程為:

(1)定義socket管理類,包括創建連接-create Socket、發送數據-send Data、接收數據-recvData、和關閉連接-close Socket。

(2)定義數據包處理類,包括數據包解碼-decode、編碼-encode、字符過濾-filter。

(3)定義RPC調用類,RPC調用類包括讀取後端伺服器配置信息:-processServerInfo、讀取測試數據配置-processYaml、讀取資料庫配置-processMysql、後端服務登錄-loginClient、公共的RPC調用方法-callRPC。

通過Python語言調用具體的RPC的流程為:

(1)定義具體RPC的調用方法:call_RPC_A(args[])。

(2)定義執行RPC調用類,執行RPC調用類類包括場景初始化-init、執行具體RPC調用-test_RPC_A、測試場景恢復配置-cover。

(3)定義驅動數據。

在此基礎上,本發明實施例中的RPC接口測試方法,包括以下步驟:

S1:在後臺伺服器上建立Socket連接,通過Socket與RPC接口進行通信,分別讀取預先設置的RPC服務的伺服器配置信息、RPC服務的測試數據配置文件、RPC服務的資料庫配置文件、以及Socket的伺服器配置信息,轉到S2。

S1中RPC服務的伺服器配置信息包括伺服器ip、RPC服務的埠號port、RPC的消息碼、用於寫入RPC調用語言的命令行終端和公共的RPC調用方法。

S2:運行測試所需的驅動數據後,加載S1中的測試數據配置文件和資料庫配置文件,通過公共的RPC調用方法在後臺伺服器上進行RPC服務登錄,轉到S3。

S3:在命令行終端上寫入測試數據配置文件的實際測試參數,根據測試參數進行測試test_RPC_get_member_ban_info,轉到S4。

S3中根據測試參數進行測試可以為以下2種中的任意1種流程:

(1)test_case_error_uid:讀取測試數據配置文件中預先定義的不正確的用戶數據;

(2)test_case_correct_uid:讀取測試數據配置文件中預先定義的正確的用戶數據。

S3中若測試過程中出現異常(例如讀取測試數據配置文件錯誤等),則捕獲並列印異常信息。

S4:根據預先設置的測試場景恢復配置,進行測試場景恢復(例如將測試場景恢復為RPC的正常工作場景等)。

本發明實施例提供的實現上述方法的RPC接口測試系統,包括測試連接建立模塊、測試驅動登陸模塊、RPC接口測試模塊和測試測試場景恢復模塊。

測試連接建立模塊用於:在伺服器上建立Socket連接,通過Socket與RPC接口進行通信,讀取預先設置的RPC服務的伺服器配置信息、測試數據配置文件、資料庫配置文件、以及Socket的伺服器配置信息,向測試驅動登陸模塊發送測試驅動登陸信號。

所述伺服器配置信息包括伺服器ip、RPC服務的埠號port、RPC的消息碼、用於寫入RPC調用語言的命令行終端和公共的RPC調用方法。

測試驅動登陸模塊用於:收到測試驅動登陸信號後,運行測試所需的驅動數據,加載所述測試數據配置文件和資料庫配置文件,通過公共RPC的調用方法在伺服器上進行RPC服務登錄,向RPC接口測試模塊發送RPC接口測試信號。

RPC接口測試模塊用於:收到RPC接口測試信號後,在命令行終端上寫入測試數據配置文件的測試參數,根據測試參數進行測試,測試的具體工作流程為:讀取測試數據配置文件中預先定義的不正確或正確的用戶數據;測試過程中,若出現異常,則捕獲異常信息。

測試測試場景恢復模塊用於:在RPC接口測試模塊測試完成後,根據預先設置的測試場景恢復配置,進行測試場景恢復。

本發明不局限於上述實施方式,對於本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也視為本發明的保護範圍之內。本說明書中未作詳細描述的內容屬於本領域專業技術人員公知的現有技術。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀