欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

RPC接口測試方法及系統(tǒng)與流程

文檔序號:11959667閱讀:3278來源:國知局

本發(fā)明涉及RPC(Remote Procedure Call Protocol,遠(yuǎn)程過程調(diào)用協(xié)議,通過網(wǎng)絡(luò)從遠(yuǎn)程計(jì)算機(jī)程序上請求服務(wù),而不需要了解底層網(wǎng)絡(luò)技術(shù)的協(xié)議)接口測試領(lǐng)域,具體涉及一種RPC接口測試方法及系統(tǒng)。



背景技術(shù):

接口測試(對系統(tǒng)組件間接口進(jìn)行測試)主要用于檢測外部系統(tǒng)與系統(tǒng)(包括各個子系統(tǒng))之間的交互點(diǎn),接口測試重點(diǎn)為檢查數(shù)據(jù)的交換、傳遞和控制管理過程,以及系統(tǒng)間的相互邏輯依賴關(guān)系等。

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

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



技術(shù)實(shí)現(xiàn)要素:

針對現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明解決的技術(shù)問題為:提供一種RPC接口測試方法及系統(tǒng),本發(fā)明能夠在RPC服務(wù)出現(xiàn)問題時及時發(fā)現(xiàn)并修復(fù),簡化了后期的操作過程和維修成本。

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

S1:在服務(wù)器上建立Socket連接,通過Socket與RPC接口進(jìn)行通信,讀取預(yù)先設(shè)置的RPC服務(wù)的服務(wù)器配置信息、測試數(shù)據(jù)配置文件和數(shù)據(jù)庫配置文件,轉(zhuǎn)到S2;

所述服務(wù)器配置信息包括用于寫入RPC調(diào)用語言的命令行終端和公共RPC的調(diào)用方法;

S2:運(yùn)行測試所需的驅(qū)動數(shù)據(jù)后,加載所述測試數(shù)據(jù)配置文件和數(shù)據(jù)庫配置文件,通過公共RPC的調(diào)用方法在服務(wù)器上進(jìn)行RPC服務(wù)登錄,轉(zhuǎn)到S3;

S3:在命令行終端上寫入測試數(shù)據(jù)配置文件的測試參數(shù),根據(jù)測試參數(shù)進(jìn)行測試。

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

在上述技術(shù)方案的基礎(chǔ)上,S3之后還包括以下步驟:根據(jù)預(yù)先設(shè)置的測試場景恢復(fù)配置,進(jìn)行測試場景恢復(fù)。

在上述技術(shù)方案的基礎(chǔ)上,S1中所述通過Socket與RPC接口進(jìn)行通信之后,還包括以下步驟:讀取預(yù)先設(shè)置的Socket的服務(wù)器配置信息。

在上述技術(shù)方案的基礎(chǔ)上,S1中所述服務(wù)器配置信息還包括服務(wù)器ip、RPC服務(wù)的端口號和RPC服務(wù)的消息碼。

本發(fā)明提供的實(shí)現(xiàn)上述方法的RPC接口測試系統(tǒng),包括測試連接建立模塊、測試驅(qū)動登陸模塊和RPC接口測試模塊;

測試連接建立模塊用于:在服務(wù)器上建立Socket連接,通過Socket與RPC接口進(jìn)行通信,讀取預(yù)先設(shè)置的RPC服務(wù)的服務(wù)器配置信息、測試數(shù)據(jù)配置文件和數(shù)據(jù)庫配置文件,向測試驅(qū)動登陸模塊發(fā)送測試驅(qū)動登陸信號;

所述服務(wù)器配置信息包括用于寫入RPC調(diào)用語言的命令行終端和公共RPC的調(diào)用方法;

測試驅(qū)動登陸模塊用于:收到測試驅(qū)動登陸信號后,運(yùn)行測試所需的驅(qū)動數(shù)據(jù),加載所述測試數(shù)據(jù)配置文件和數(shù)據(jù)庫配置文件,通過公共RPC的調(diào)用方法在服務(wù)器上進(jìn)行RPC服務(wù)登錄,向RPC接口測試模塊發(fā)送RPC接口測試信號;

RPC接口測試模塊用于:收到RPC接口測試信號后,在命令行終端上寫入測試數(shù)據(jù)配置文件的測試參數(shù),根據(jù)測試參數(shù)進(jìn)行測試。

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

在上述技術(shù)方案的基礎(chǔ)上,該系統(tǒng)還包括測試測試場景恢復(fù)模塊,其用于:在RPC接口測試模塊測試完成后,根據(jù)預(yù)先設(shè)置的測試場景恢復(fù)配置,進(jìn)行測試場景恢復(fù)。

在上述技術(shù)方案的基礎(chǔ)上,所述測試連接建立模塊通過Socket與RPC接口進(jìn)行通信之后,還包括以下工作流程:讀取預(yù)先設(shè)置的Socket的服務(wù)器配置信息。

在上述技術(shù)方案的基礎(chǔ)上,所述測試連接建立模塊讀取的服務(wù)器配置信息,還包括服務(wù)器ip、RPC服務(wù)的端口號和RPC服務(wù)的消息碼。

與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于:

本發(fā)明根據(jù)自行創(chuàng)造的測試方式,能夠完成RPC接口的測試,進(jìn)而使得RPC服務(wù)出現(xiàn)問題時能夠及時發(fā)現(xiàn)并修復(fù),簡化了后期的操作過程和維修成本。

附圖說明

圖1為本發(fā)明實(shí)施例中RPC接口測試方法的流程圖。

具體實(shí)施方式

以下結(jié)合附圖及實(shí)施例對本發(fā)明作進(jìn)一步詳細(xì)說明。

本發(fā)明實(shí)施例中的RPC接口測試方法,借鑒了數(shù)據(jù)驅(qū)動的測試自動化思想(以數(shù)據(jù)來控制自動化測試的流程和動作的測試,其中數(shù)據(jù)是獨(dú)立于測試用例腳本的,通常以文本文件形式、Excel文件形式、XML文件等形式存在),以Python語言(面向?qū)ο?、解釋型?jì)算機(jī)程序設(shè)計(jì)語言)為主實(shí)現(xiàn)了后端服務(wù)器的Socket通信和RPC調(diào)用,并結(jié)合軟件測試中的邊界值、等價(jià)類、正交試驗(yàn)設(shè)計(jì)等方法編寫接口測試用例。

其中Socket通信通常也稱作"套接字",用于描述IP地址和端口,是一個通信鏈的句柄,可以用來實(shí)現(xiàn)不同虛擬機(jī)或不同計(jì)算機(jī)之間的通信。在Internet上的主機(jī)一般運(yùn)行了多個服務(wù)軟件,同時提供幾種服務(wù)。每種服務(wù)都打開一個Socket,并綁定到一個端口上,不同的端口對應(yīng)于不同的服務(wù)。

本發(fā)明實(shí)施例進(jìn)行RPC接口測試之前,需要實(shí)現(xiàn)與后端服務(wù)器的Socket進(jìn)行通信、以及通過Python語言調(diào)用具體的RPC服務(wù)(RPC接口承載的是RPC服務(wù))。

與后端服務(wù)器的Socket進(jìn)行通信的流程為:

(1)定義socket管理類,包括創(chuàng)建連接-create Socket()、發(fā)送數(shù)據(jù)-send Data()、接收數(shù)據(jù)-recvData()、和關(guān)閉連接-close Socket()。

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

(3)定義RPC調(diào)用類,RPC調(diào)用類包括讀取后端服務(wù)器配置信息:-processServerInfo()、讀取測試數(shù)據(jù)配置-processYaml()、讀取數(shù)據(jù)庫配置-processMysql()、后端服務(wù)登錄-loginClient()、公共的RPC調(diào)用方法-callRPC()。

通過Python語言調(diào)用具體的RPC的流程為:

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

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

(3)定義驅(qū)動數(shù)據(jù)。

在此基礎(chǔ)上,本發(fā)明實(shí)施例中的RPC接口測試方法,包括以下步驟:

S1:在后臺服務(wù)器上建立Socket連接,通過Socket與RPC接口進(jìn)行通信,分別讀取預(yù)先設(shè)置的RPC服務(wù)的服務(wù)器配置信息、RPC服務(wù)的測試數(shù)據(jù)配置文件、RPC服務(wù)的數(shù)據(jù)庫配置文件、以及Socket的服務(wù)器配置信息,轉(zhuǎn)到S2。

S1中RPC服務(wù)的服務(wù)器配置信息包括服務(wù)器ip、RPC服務(wù)的端口號port、RPC的消息碼、用于寫入RPC調(diào)用語言的命令行終端和公共的RPC調(diào)用方法。

S2:運(yùn)行測試所需的驅(qū)動數(shù)據(jù)后,加載S1中的測試數(shù)據(jù)配置文件和數(shù)據(jù)庫配置文件,通過公共的RPC調(diào)用方法在后臺服務(wù)器上進(jìn)行RPC服務(wù)登錄,轉(zhuǎn)到S3。

S3:在命令行終端上寫入測試數(shù)據(jù)配置文件的實(shí)際測試參數(shù),根據(jù)測試參數(shù)進(jìn)行測試test_RPC_get_member_ban_info(),轉(zhuǎn)到S4。

S3中根據(jù)測試參數(shù)進(jìn)行測試可以為以下2種中的任意1種流程:

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

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

S3中若測試過程中出現(xiàn)異常(例如讀取測試數(shù)據(jù)配置文件錯誤等),則捕獲并打印異常信息。

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

本發(fā)明實(shí)施例提供的實(shí)現(xiàn)上述方法的RPC接口測試系統(tǒng),包括測試連接建立模塊、測試驅(qū)動登陸模塊、RPC接口測試模塊和測試測試場景恢復(fù)模塊。

測試連接建立模塊用于:在服務(wù)器上建立Socket連接,通過Socket與RPC接口進(jìn)行通信,讀取預(yù)先設(shè)置的RPC服務(wù)的服務(wù)器配置信息、測試數(shù)據(jù)配置文件、數(shù)據(jù)庫配置文件、以及Socket的服務(wù)器配置信息,向測試驅(qū)動登陸模塊發(fā)送測試驅(qū)動登陸信號。

所述服務(wù)器配置信息包括服務(wù)器ip、RPC服務(wù)的端口號port、RPC的消息碼、用于寫入RPC調(diào)用語言的命令行終端和公共的RPC調(diào)用方法。

測試驅(qū)動登陸模塊用于:收到測試驅(qū)動登陸信號后,運(yùn)行測試所需的驅(qū)動數(shù)據(jù),加載所述測試數(shù)據(jù)配置文件和數(shù)據(jù)庫配置文件,通過公共RPC的調(diào)用方法在服務(wù)器上進(jìn)行RPC服務(wù)登錄,向RPC接口測試模塊發(fā)送RPC接口測試信號。

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

測試測試場景恢復(fù)模塊用于:在RPC接口測試模塊測試完成后,根據(jù)預(yù)先設(shè)置的測試場景恢復(fù)配置,進(jìn)行測試場景恢復(fù)。

本發(fā)明不局限于上述實(shí)施方式,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也視為本發(fā)明的保護(hù)范圍之內(nèi)。本說明書中未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
子洲县| 诸暨市| 定边县| 德州市| 宁都县| 杭州市| 阿坝县| 江西省| 清原| 中阳县| 武平县| 连平县| 尖扎县| 东丰县| 博湖县| 盐亭县| 莱州市| 麦盖提县| 武威市| 揭西县| 南华县| 尉氏县| 资兴市| 井研县| 边坝县| 襄汾县| 宜丰县| 招远市| 额济纳旗| 安福县| 西丰县| 中宁县| 北流市| 宝山区| 斗六市| 景德镇市| 新巴尔虎左旗| 遂昌县| 恭城| 淄博市| 北碚区|