本公開(kāi)涉及軟件測(cè)試領(lǐng)域,具體而言,涉及一種服務(wù)端接口測(cè)試系統(tǒng)以及服務(wù)端接口測(cè)試方法。
背景技術(shù):
在網(wǎng)絡(luò)系統(tǒng)中,客戶端往往負(fù)責(zé)信息(例如,文字、圖像等)的表現(xiàn),而服務(wù)端通常涉及與信息相關(guān)的邏輯處理。例如,在網(wǎng)絡(luò)游戲中,客戶端主要負(fù)責(zé)游戲畫(huà)面的表現(xiàn),而服務(wù)端通常負(fù)責(zé)對(duì)涉及游戲畫(huà)面和/或游戲操作的數(shù)據(jù)進(jìn)行邏輯計(jì)算。此外,服務(wù)端可以通過(guò)各個(gè)接口來(lái)實(shí)現(xiàn)對(duì)客戶端信息的處理,因此,服務(wù)端接口在整個(gè)網(wǎng)絡(luò)系統(tǒng)中占據(jù)重要的位置,對(duì)服務(wù)端接口的測(cè)試也成為整個(gè)網(wǎng)絡(luò)系統(tǒng)測(cè)試中的重要內(nèi)容。
目前,以網(wǎng)絡(luò)游戲?yàn)槔?,測(cè)試人員對(duì)服務(wù)端接口進(jìn)行測(cè)試的方法可以包括:編寫(xiě)無(wú)客戶端的機(jī)器人代碼并登錄游戲;了解各待測(cè)接口的參數(shù)含義和語(yǔ)法規(guī)則;編寫(xiě)測(cè)試腳本代碼并通過(guò)執(zhí)行所述測(cè)試腳本代碼來(lái)發(fā)送RPC(Remote Procedure Call,遠(yuǎn)程過(guò)程調(diào)用)信息,以進(jìn)行接口測(cè)試;以及根據(jù)日志判斷測(cè)試結(jié)果是否符合預(yù)期。這種對(duì)服務(wù)端接口進(jìn)行測(cè)試的方法的缺點(diǎn)在于:測(cè)試人員無(wú)法直觀地了解到待測(cè)試接口的參數(shù)規(guī)范,并且測(cè)試結(jié)果需要根據(jù)日志來(lái)判斷,無(wú)法得到更直觀的反饋信息,同時(shí),測(cè)試人員需要編寫(xiě)大量的測(cè)試腳本且測(cè)試的靈活較差。
鑒于此,需要一種新的服務(wù)端接口測(cè)試系統(tǒng)以及服務(wù)端接口測(cè)試方法。
需要說(shuō)明的是,在上述背景技術(shù)部分公開(kāi)的信息僅用于加強(qiáng)對(duì)本公開(kāi)的背景的理解,因此可以包括不構(gòu)成對(duì)本領(lǐng)域普通技術(shù)人員已知的現(xiàn)有技術(shù)的信息。
技術(shù)實(shí)現(xiàn)要素:
本公開(kāi)的目的在于提供一種服務(wù)端接口測(cè)試系統(tǒng)以及服務(wù)端接口測(cè)試方法,進(jìn)而至少在一定程度上克服由于相關(guān)技術(shù)的限制和缺陷而導(dǎo)致的一個(gè)或者多個(gè)問(wèn)題。
根據(jù)本公開(kāi)的一個(gè)方面,提供一種服務(wù)端接口測(cè)試系統(tǒng),包括一中間模塊和一前端模塊,其中:
所述中間模塊用于將一客戶端的針對(duì)待測(cè)試接口的預(yù)設(shè)操作過(guò)程中的RPC信息發(fā)送至所述前端模塊,并且/或者接收一服務(wù)器對(duì)所述RPC信息進(jìn)行響應(yīng)而獲得的反饋結(jié)果并將所述RPC信息的反饋結(jié)果發(fā)送至所述前端模塊;
所述前端模塊用于接收并顯示來(lái)自所述中間模塊的所述RPC信息和/或所述RPC信息的反饋結(jié)果。
在本公開(kāi)的一種示例性實(shí)施例中,其中:
所述前端模塊還用于在接收來(lái)自所述中間模塊的所述RPC信息后,響應(yīng)一修改請(qǐng)求對(duì)所述RPC信息進(jìn)行修改以獲得修改后的RPC信息,并將所述修改后的RPC信息發(fā)送至所述中間模塊;
所述中間模塊還用于將接收到的所述修改后的RPC信息發(fā)送至所述服務(wù)器,并且接收所述服務(wù)器對(duì)所述修改后的RPC信息進(jìn)行響應(yīng)而獲得的反饋結(jié)果,并將所述該反饋結(jié)果發(fā)送至所述前端模塊并由所述前端模塊顯示。
在本公開(kāi)的一種示例性實(shí)施例中,所述服務(wù)端接口測(cè)試系統(tǒng)還包括:
第一判斷模塊,用于判斷所述RPC信息的反饋結(jié)果和/或所述修改后的RPC信息的反饋結(jié)果是否滿足預(yù)設(shè)要求。
在本公開(kāi)的一種示例性實(shí)施例中,所述判斷所述RPC信息的反饋結(jié)果和/或所述修改后的RPC信息的反饋結(jié)果是否滿足預(yù)設(shè)要求包括:
通過(guò)所述客戶端對(duì)所述RPC信息的反饋結(jié)果和/或所述修改后的RPC信息的反饋結(jié)果進(jìn)行代碼處理,以得到所述客戶端的響應(yīng)結(jié)果,并且根據(jù)所述客戶端的響應(yīng)結(jié)果判斷所述RPC信息的反饋結(jié)果和/或所述修改后的RPC信息的反饋結(jié)果是否滿足預(yù)設(shè)要求。
在本公開(kāi)的一種示例性實(shí)施例中,所述判斷所述RPC信息的反饋結(jié)果和/或所述修改后的RPC信息的反饋結(jié)果是否滿足預(yù)設(shè)要求包括:
通過(guò)所述前端模塊接收并顯示所述RPC信息的反饋結(jié)果和/或所述修改后的RPC信息的反饋結(jié)果,并在所述前端模塊處判斷所述RPC信息的反饋結(jié)果和/或所述修改后的RPC信息的反饋結(jié)果是否滿足預(yù)設(shè)要求。
在本公開(kāi)的一種示例性實(shí)施例中,所述服務(wù)端接口測(cè)試系統(tǒng)還包括:
第二判斷模塊,用于判斷是否完成對(duì)所述待測(cè)試接口的測(cè)試,其中:
在判斷出已完成對(duì)所述待測(cè)試接口的測(cè)試時(shí),所述服務(wù)端接口測(cè)試系統(tǒng)進(jìn)入下一服務(wù)端接口測(cè)試過(guò)程;
在判斷出未完成對(duì)所述待測(cè)試接口的測(cè)試時(shí),所述前端模塊在接收來(lái)自所述中間模塊的所述RPC信息后,響應(yīng)一修改請(qǐng)求對(duì)所述RPC信息進(jìn)行修改以獲得修改后的RPC信息,并將所述修改后的RPC信息發(fā)送至所述中間模塊,并且所述中間模塊將接收到的所述修改后的RPC信息發(fā)送至所述服務(wù)器,并接收所述服務(wù)器對(duì)所述修改后的RPC信息進(jìn)行響應(yīng)而獲得的反饋結(jié)果,并將所述該反饋結(jié)果發(fā)送至所述前端模塊并由所述前端模塊顯示。
在本公開(kāi)的一種示例性實(shí)施例中,所述服務(wù)端接口測(cè)試系統(tǒng)還包括:
第三判斷模塊,用于判斷所述服務(wù)器的所有接口是否已完成測(cè)試,并且在判斷出所述服務(wù)器的所有接口已完成測(cè)試時(shí),關(guān)閉所述客戶端和所述前端模塊。
在本公開(kāi)的一種示例性實(shí)施例中,所述中間模塊嵌入在所述客戶端中。
在本公開(kāi)的一種示例性實(shí)施例中,所述RPC信息包括函數(shù)名、參數(shù)、發(fā)送/接收信息;
其中,所述RPC信息在所述前端模塊中以樹(shù)狀表格的形式顯示。
根據(jù)本公開(kāi)的一個(gè)方面,提供一種服務(wù)端接口測(cè)試方法,所述服務(wù)端接口測(cè)試方法應(yīng)用于包括一中間模塊以及一前端模塊的服務(wù)端接口測(cè)試系統(tǒng);所述服務(wù)端接口測(cè)試方法包括:
通過(guò)所述中間模塊將一客戶端的針對(duì)待測(cè)試接口的預(yù)設(shè)操作過(guò)程中的RPC信息發(fā)送至所述前端模塊,并且/或者接收一服務(wù)器對(duì)所述RPC信息進(jìn)行響應(yīng)而獲得的反饋結(jié)果并將所述RPC信息的反饋結(jié)果發(fā)送至所述前端模塊;
通過(guò)所述前端模塊接收并顯示來(lái)自所述中間模塊的所述RPC信息和/或所述RPC信息的反饋結(jié)果。
在本公開(kāi)的一種示例性實(shí)施例中,其中:
通過(guò)所述前端模塊在接收來(lái)自所述中間模塊的所述RPC信息后響應(yīng)一修改請(qǐng)求對(duì)所述RPC信息進(jìn)行修改來(lái)獲得修改后的RPC信息,并將所述修改后的RPC信息發(fā)送至所述中間模塊;
通過(guò)所述中間模塊將接收到的所述修改后的RPC信息發(fā)送至所述服務(wù)器,并且接收所述服務(wù)器對(duì)所述修改后的RPC信息進(jìn)行響應(yīng)而獲得的反饋結(jié)果,并將所述該反饋結(jié)果發(fā)送至所述前端模塊并由所述前端模塊顯示。
在本公開(kāi)的一些實(shí)施例所提供的技術(shù)方案中,通過(guò)配置一中間模塊和一前端模塊,由該中間模塊將客戶端的預(yù)設(shè)操作過(guò)程中的RPC信息發(fā)送至該前端模塊,并由該前端模塊顯示RPC信息,以及由該中間模塊將服務(wù)器對(duì)RPC信息進(jìn)行響應(yīng)而獲得反饋結(jié)果發(fā)送至該前端模塊并顯示所述該反饋結(jié)果,實(shí)現(xiàn)了測(cè)試的可視化,有助于測(cè)試人員了解服務(wù)端接口的參數(shù)規(guī)范,減少了測(cè)試人員對(duì)源代碼的閱讀,提高了測(cè)試效率。
應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本公開(kāi)。
附圖說(shuō)明
此處的附圖被并入說(shuō)明書(shū)中并構(gòu)成本說(shuō)明書(shū)的一部分,示出了符合本公開(kāi)的實(shí)施例,并與說(shuō)明書(shū)一起用于解釋本公開(kāi)的原理。顯而易見(jiàn)地,下面描述中的附圖僅僅是本公開(kāi)的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。在附圖中:
圖1示意性示出了根據(jù)本公開(kāi)的示例性實(shí)施方式的服務(wù)端接口測(cè)試系統(tǒng)以及其實(shí)施場(chǎng)景的整體架構(gòu)圖;
圖2示出了根據(jù)本公開(kāi)的示例性實(shí)施方式的RPC信息的顯示示意圖;以及
圖3示意性示出了根據(jù)本公開(kāi)的示例性實(shí)施方式的服務(wù)端接口測(cè)試方法的流程圖。
具體實(shí)施方式
現(xiàn)在將參考附圖更全面地描述示例實(shí)施方式。然而,示例實(shí)施方式能夠以多種形式實(shí)施,且不應(yīng)被理解為限于在此闡述的范例;相反,提供這些實(shí)施方式使得本公開(kāi)將更加全面和完整,并將示例實(shí)施方式的構(gòu)思全面地傳達(dá)給本領(lǐng)域的技術(shù)人員。所描述的特征、結(jié)構(gòu)或特性可以以任何合適的方式結(jié)合在一個(gè)或更多實(shí)施方式中。在下面的描述中,提供許多具體細(xì)節(jié)從而給出對(duì)本公開(kāi)的實(shí)施方式的充分理解。然而,本領(lǐng)域技術(shù)人員將意識(shí)到,可以實(shí)踐本公開(kāi)的技術(shù)方案而省略所述特定細(xì)節(jié)中的一個(gè)或更多,或者可以采用其它的方法、組元、裝置、步驟等。在其它情況下,不詳細(xì)示出或描述公知技術(shù)方案以避免喧賓奪主而使得本公開(kāi)的各方面變得模糊。
此外,附圖僅為本公開(kāi)的示意性圖解,并非一定是按比例繪制。圖中相同的附圖標(biāo)記表示相同或類(lèi)似的部分,因而將省略對(duì)它們的重復(fù)描述。附圖中所示的一些方框圖是功能實(shí)體,不一定必須與物理或邏輯上獨(dú)立的實(shí)體相對(duì)應(yīng)??梢圆捎密浖问絹?lái)實(shí)現(xiàn)這些功能實(shí)體,或在一個(gè)或多個(gè)硬件模塊或集成電路中實(shí)現(xiàn)這些功能實(shí)體,或在不同網(wǎng)絡(luò)和/或處理器裝置和/或微控制器裝置中實(shí)現(xiàn)這些功能實(shí)體。
附圖中所示的流程圖僅是示例性說(shuō)明,不是必須包括所有的步驟。例如,有的步驟還可以分解,而有的步驟可以合并或部分合并,因此實(shí)際執(zhí)行的順序有可能根據(jù)實(shí)際情況改變。
根據(jù)本公開(kāi)的示例性實(shí)施方式的服務(wù)端接口測(cè)試系統(tǒng)可以包括一中間模塊和一前端模塊,其中:
所述中間模塊用于將一客戶端的針對(duì)待測(cè)試接口的預(yù)設(shè)操作過(guò)程中的RPC信息發(fā)送至所述前端模塊,并且/或者接收一服務(wù)器對(duì)所述RPC信息進(jìn)行響應(yīng)而獲得的反饋結(jié)果并將所述RPC信息的反饋結(jié)果發(fā)送至所述前端模塊;
所述前端模塊用于接收并顯示來(lái)自所述中間模塊的所述RPC信息和/或所述RPC信息的反饋結(jié)果。
在本公開(kāi)的一些實(shí)施例所提供的技術(shù)方案中,通過(guò)配置一中間模塊和一前端模塊,由該中間模塊將客戶端的預(yù)設(shè)操作過(guò)程中的RPC信息發(fā)送至該前端模塊,并由該前端模塊顯示RPC信息,以及由該中間模塊將服務(wù)器對(duì)RPC信息進(jìn)行響應(yīng)而獲得反饋結(jié)果發(fā)送至該前端模塊并顯示所述該反饋結(jié)果,實(shí)現(xiàn)了測(cè)試的可視化,有助于測(cè)試人員了解服務(wù)端接口的參數(shù)規(guī)范,減少了對(duì)源代碼的閱讀,提高了測(cè)試效率。
下面將參考圖1對(duì)根據(jù)本公開(kāi)的示例性實(shí)施方式的服務(wù)端接口測(cè)試系統(tǒng)進(jìn)行詳細(xì)描述。
參考圖1,根據(jù)本公開(kāi)的示例性實(shí)施方式的服務(wù)端接口測(cè)試系統(tǒng)可以包括中間模塊3和前端模塊4,所述服務(wù)端接口測(cè)試系統(tǒng)的實(shí)施場(chǎng)景可以包括客戶端1和服務(wù)器2。
根據(jù)本公開(kāi)的一些實(shí)施例,客戶端1可以與服務(wù)器2連接,中間模塊3可以嵌入在客戶端1中并且與前端模塊4連接。然而,根據(jù)本公開(kāi)的另一些實(shí)施例,中間模塊3還可以在客戶端1外部且能夠與客戶端1進(jìn)行數(shù)據(jù)交互。
以網(wǎng)絡(luò)游戲?yàn)槔?,客戶?可以是游戲客戶端,用于提供游戲所需的本地服務(wù)程序。在測(cè)試人員對(duì)客戶端1進(jìn)行操作的過(guò)程中,客戶端1可以產(chǎn)生RPC信息;服務(wù)器2可以是游戲服務(wù)器,用于對(duì)客戶端1產(chǎn)生的RPC信息以及其他信息進(jìn)行響應(yīng),并且在響應(yīng)后可以得到反饋結(jié)果并將反饋結(jié)果發(fā)送至客戶端1。
此外,中間模塊3可以是Web服務(wù)器,前端模塊4可以是與中間模塊對(duì)應(yīng)的Web瀏覽器。然而,本公開(kāi)不限于此,中間模塊3還可以是與客戶端1匹配并具有接收/發(fā)送功能的其他單元,而前端模塊4還可以是與中間模塊3匹配并具有顯示以及相應(yīng)輸入功能的接收/發(fā)送單元,本示例性實(shí)施方式中對(duì)此不做特殊限定。
根據(jù)本公開(kāi)的一些實(shí)施例,中間模塊3可以將客戶端1產(chǎn)生的RPC信息發(fā)送至前端模塊4,由前端模塊4實(shí)時(shí)顯示RPC信息。
圖2示出了根據(jù)本公開(kāi)的示例性實(shí)施方式的RPC信息的顯示示意圖。參考圖2,本公開(kāi)的示例性實(shí)施方式中的RPC信息可以包括函數(shù)名、參數(shù)以及接收/發(fā)送信息等,并且所述RPC信息可以采用樹(shù)狀表格的形式顯示。然而,RPC信息還可以包括與游戲操作過(guò)程相關(guān)的其他信息,并且采用樹(shù)狀表格的形式顯示旨在便于測(cè)試人員直觀的了解到RPC信息,本領(lǐng)域技術(shù)人員容易理解的是,RPC信息還可以采用其他顯示形式。
根據(jù)另外一些實(shí)施例,首先,客戶端1可以將產(chǎn)生的RPC信息發(fā)送至待測(cè)試的服務(wù)端接口,由服務(wù)器2對(duì)RPC信息進(jìn)行響應(yīng)并得到反饋結(jié)果,接下來(lái),客戶端1接收所述反饋結(jié)果,并由中間模塊3將所述反饋結(jié)果發(fā)送至前端模塊4,隨后,前端模塊4可以顯示所述反饋結(jié)果。
通過(guò)上述過(guò)程,測(cè)試人員可以通過(guò)前端模塊4的顯示內(nèi)容,直觀地了解到客戶端1產(chǎn)生的RPC信息以及/或者由服務(wù)器2對(duì)RPC信息進(jìn)行響應(yīng)后的反饋結(jié)果。顯然,相比于閱讀源代碼,測(cè)試人員閱讀這些信息更容易。在一些源代碼復(fù)雜的情況下,能夠大大提高測(cè)試效率。
在本公開(kāi)的示例性實(shí)施方式中,前端模塊4在接收到來(lái)自中間模塊3的RPC信息之后,可以響應(yīng)于來(lái)自測(cè)試人員的修改請(qǐng)求對(duì)所述RPC信息進(jìn)行修改,以獲得并顯示修改后的RPC信息。隨后,前端模塊4可以將所述修改后的RPC信息發(fā)送至中間模塊3。
接下來(lái),中間模塊3可以通過(guò)客戶端1的端口將所述修改后的RPC信息發(fā)送至服務(wù)器2,由服務(wù)器2對(duì)所述修改后的RPC信息進(jìn)行響應(yīng)而獲得與其對(duì)應(yīng)的反饋結(jié)果。隨后,客戶端1可以接收所述該反饋結(jié)果,并通過(guò)中間模塊3將所述該反饋結(jié)果發(fā)送至前端模塊4,由前端模塊4顯示所述該反饋結(jié)果,此時(shí),測(cè)試人員可以直觀地閱讀所述該反饋結(jié)果,并對(duì)所述該反饋結(jié)果進(jìn)行判斷,以確定是否滿足預(yù)設(shè)要求。
在本公開(kāi)的示例性實(shí)施方式中,根據(jù)本公開(kāi)的示例性實(shí)施方式的服務(wù)端接口測(cè)試系統(tǒng)還可以包括第一判斷模塊(圖中未示出),第一判斷模塊可以用于判斷RPC信息的反饋結(jié)果和/或修改后的RPC信息的反饋結(jié)果是否滿足預(yù)設(shè)要求。
根據(jù)本公開(kāi)的一些實(shí)施例,客戶端1在接收到RPC信息的反饋結(jié)果和/或修改后的RPC信息的反饋結(jié)果之后可以對(duì)它們進(jìn)行代碼處理,以得到客戶端1的響應(yīng)結(jié)果,測(cè)試人員可以根據(jù)客戶端1的響應(yīng)結(jié)果來(lái)判斷測(cè)試是否滿足預(yù)設(shè)要求。例如,在網(wǎng)絡(luò)游戲中,對(duì)客戶端1的操作可以是針對(duì)一虛擬對(duì)象點(diǎn)擊裝備盔甲的控件,此時(shí),如果客戶端1上的虛擬對(duì)象裝備上盔甲,則該測(cè)試滿足預(yù)設(shè)要求。
根據(jù)另外一些實(shí)施例,可以通過(guò)中間模塊3將RPC信息的反饋結(jié)果和/或修改后的RPC信息的反饋結(jié)果發(fā)送至前端模塊4,測(cè)試人員可以通過(guò)在前端模塊4處閱讀上述信息來(lái)確定接口測(cè)試是否滿足預(yù)設(shè)要求。
在本公開(kāi)的示例性實(shí)施方式中,根據(jù)本公開(kāi)的示例性實(shí)施方式的服務(wù)端接口測(cè)試系統(tǒng)還可以包括第二判斷模塊(圖中未示出),第二判斷模塊可以用于判斷是否完成對(duì)所述待測(cè)試接口的測(cè)試。
具體的,在判斷出已完成對(duì)待測(cè)試接口的測(cè)試時(shí),服務(wù)端接口測(cè)試系統(tǒng)將進(jìn)入下一服務(wù)端接口的測(cè)試過(guò)程。
此外,在判斷出未完成對(duì)待測(cè)試接口的測(cè)試時(shí),可以在前端模塊4處響應(yīng)于修改請(qǐng)求對(duì)RPC信息進(jìn)行修改,并將修改后的RPC信息經(jīng)由中間模塊3發(fā)送至服務(wù)器2,由服務(wù)器2對(duì)修改后的RPC信息進(jìn)行響應(yīng),并將響應(yīng)后的反饋結(jié)果通過(guò)中間模塊3發(fā)送至前端模塊4并顯示。
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解的是,測(cè)試人員可以對(duì)RPC信息中的各種參數(shù)進(jìn)行修改,以滿足測(cè)試需求。
在本公開(kāi)的示例性實(shí)施方式中,根據(jù)本公開(kāi)的示例性實(shí)施方式的服務(wù)端接口測(cè)試系統(tǒng)還可以包括第三判斷模塊(圖中未示出),第三模塊可以用于判斷服務(wù)器2的所有接口是否已完成測(cè)試,并在判斷出服務(wù)器2的所有接口已完成測(cè)試時(shí),可以關(guān)閉客戶端1和前端模塊4。
通過(guò)本公開(kāi)的示例性實(shí)施方式的服務(wù)端接口測(cè)試系統(tǒng),一方面,通過(guò)實(shí)時(shí)顯示RPC信息以及服務(wù)器對(duì)RPC信息的反饋結(jié)果,有助于測(cè)試人員直觀地了解服務(wù)端接口的參數(shù)規(guī)范,避免了閱讀源代碼的過(guò)程;另一方面,通過(guò)在前端模塊處修改RPC信息,可以使測(cè)試人員在無(wú)需編寫(xiě)測(cè)試腳本的情況下完成接口測(cè)試,在降低了測(cè)試人員代碼能力的要求的同時(shí),提高了測(cè)試的效率和靈活度;再一方面,通過(guò)在客戶端處觀察響應(yīng)效果來(lái)判斷測(cè)試結(jié)果是否滿足預(yù)設(shè)要求,相比于查詢(xún)?nèi)罩?,測(cè)試人員能夠得到較直觀的反饋。
應(yīng)當(dāng)注意,盡管在上文詳細(xì)描述中提及了程序運(yùn)行性能分析裝置的若干模塊或者單元,但是這種劃分并非強(qiáng)制性的。實(shí)際上,根據(jù)本公開(kāi)的實(shí)施方式,上文描述的兩個(gè)或更多模塊或者單元的特征和功能可以在一個(gè)模塊或者單元中具體化。反之,上文描述的一個(gè)模塊或者單元的特征和功能可以進(jìn)一步劃分為由多個(gè)模塊或者單元來(lái)具體化。
進(jìn)一步的,本示例實(shí)施方式中還提供了一種服務(wù)端接口測(cè)試方法,該服務(wù)端接口測(cè)試方法應(yīng)用于包括中間模塊和前端模塊的服務(wù)端接口測(cè)試系統(tǒng)。所述服務(wù)端接口測(cè)試方法可以包括:
通過(guò)所述中間模塊將一客戶端的針對(duì)待測(cè)試接口的預(yù)設(shè)操作過(guò)程中的RPC信息發(fā)送至所述前端模塊,并且/或者接收一服務(wù)器對(duì)所述RPC信息進(jìn)行響應(yīng)而獲得的反饋結(jié)果并將所述RPC信息的反饋結(jié)果發(fā)送至所述前端模塊;
通過(guò)所述前端模塊接收并顯示來(lái)自所述中間模塊的所述RPC信息和/或所述RPC信息的反饋結(jié)果。
根據(jù)本公開(kāi)的示例性實(shí)施方式,在所述服務(wù)端接口測(cè)試方法中,通過(guò)所述前端模塊在接收來(lái)自所述中間模塊的所述RPC信息后響應(yīng)一修改請(qǐng)求對(duì)所述RPC信息進(jìn)行修改來(lái)獲得修改后的RPC信息,并將所述修改后的RPC信息發(fā)送至所述中間模塊;通過(guò)所述中間模塊將接收到的所述修改后的RPC信息發(fā)送至所述服務(wù)器,并且接收所述服務(wù)器對(duì)所述修改后的RPC信息進(jìn)行響應(yīng)而獲得的反饋結(jié)果,并將所述該反饋結(jié)果發(fā)送至所述前端模塊并由所述前端模塊顯示。
本公開(kāi)的方法發(fā)明實(shí)施方式與上述程序運(yùn)行性能分析裝置的各個(gè)功能模塊相同,因此在此不再贅述。
接下來(lái),將以網(wǎng)絡(luò)游戲?yàn)槔⒖紙D3對(duì)根據(jù)本公開(kāi)的示例性實(shí)施方式的服務(wù)端接口測(cè)試方法進(jìn)行示例性描述。
以網(wǎng)絡(luò)游戲?yàn)槔姆?wù)端接口測(cè)試方法可以包括以下步驟:
S102.啟動(dòng)游戲,開(kāi)啟接口測(cè)試功能。
在啟動(dòng)游戲客戶端并登錄游戲界面后,可以通過(guò)輸入指定的GM(Game Master,游戲管理者)指令來(lái)開(kāi)啟接口測(cè)試功能。另外,對(duì)于一些游戲界面上存在開(kāi)啟接口測(cè)試功能控件的游戲,測(cè)試人員直接點(diǎn)擊該控件即可。此外,可以將開(kāi)啟接口測(cè)試功能配置為登錄后自動(dòng)開(kāi)啟。本示例性實(shí)施方式中對(duì)此不做特殊限定。
根據(jù)本公開(kāi)的一些實(shí)施例,開(kāi)啟接口測(cè)試功能可以包括:?jiǎn)?dòng)Web服務(wù)器,同時(shí)改寫(xiě)游戲客戶端的Tick函數(shù)邏輯,具體的,在Tick函數(shù)邏輯中加入Web服務(wù)器的網(wǎng)絡(luò)循環(huán),也就是說(shuō),針對(duì)游戲中的每一幀,在處理原有的游戲邏輯的同時(shí),還需執(zhí)行Web服務(wù)器的一次網(wǎng)絡(luò)循環(huán)。另外,可以采用輕量級(jí)的Web服務(wù)器,在這種情況下,Web服務(wù)器不會(huì)對(duì)游戲客戶端的程序邏輯產(chǎn)生較大影響。
另外,開(kāi)啟接口測(cè)試功能還可以包括:改寫(xiě)游戲客戶端RPC信息中的相關(guān)函數(shù)(例如,接收/發(fā)送信息),使得改寫(xiě)后的函數(shù)不僅要執(zhí)行改寫(xiě)前函數(shù)的邏輯,還要將函數(shù)信息(包括RPC信息)發(fā)送至Web瀏覽器。
此外,開(kāi)啟接口測(cè)試功能還可以包括:定義Web服務(wù)器接收消息的函數(shù),使游戲客戶端可以發(fā)送修改后的RPC信息。
S104.打開(kāi)Web瀏覽器,與Web服務(wù)器建立連接。
Web服務(wù)器定義了與其相匹配的Web地址和端口號(hào),打開(kāi)Web瀏覽器后,可以輸入與Web服務(wù)器相匹配的Web地址和端口號(hào),即可與Web服務(wù)器建立連接。然而,本公開(kāi)的Web瀏覽器還可以是與Web服務(wù)器匹配的瀏覽器,在這種情況下,打開(kāi)Web瀏覽器的同時(shí)即與Web服務(wù)器建立了聯(lián)系,無(wú)需輸入Web地址和端口號(hào)。
S106.操作游戲客戶端,Web瀏覽器上實(shí)時(shí)顯示RPC信息。
測(cè)試人員可以對(duì)游戲客戶端進(jìn)行操作,游戲客戶端會(huì)產(chǎn)生RPC信息,Web服務(wù)器將RPC信息發(fā)送至Web瀏覽器,并由Web瀏覽器實(shí)時(shí)顯示所述RPC信息。
S108.修改RPC信息,點(diǎn)擊Web瀏覽器上的重新發(fā)送控件。
測(cè)試人員可以對(duì)Web瀏覽器上的RPC信息進(jìn)行修改,修改完成后,點(diǎn)擊Web瀏覽器上的重新發(fā)送控件,以將修改后的RPC信息發(fā)送至Web服務(wù)器,接下來(lái),Web服務(wù)器通過(guò)游戲客戶端的端口將修改后的RPC信息發(fā)送至游戲服務(wù)器,由游戲服務(wù)器對(duì)修改后的RPC信息進(jìn)行響應(yīng)以得到反饋結(jié)果,隨后,游戲服務(wù)器將該反饋結(jié)果發(fā)送至游戲客戶端。
S110.根據(jù)游戲客戶端表現(xiàn)和/或Web瀏覽器上顯示的信息判斷測(cè)試結(jié)果。
游戲客戶端在接收步驟S108中生成的反饋結(jié)果之后,可以產(chǎn)生一響應(yīng)效果(即,游戲客戶端表現(xiàn)),并且測(cè)試人員可以根據(jù)響應(yīng)效果來(lái)判斷測(cè)試結(jié)果。另外,Web服務(wù)器可以將步驟S108中生成的反饋結(jié)果發(fā)送至Web瀏覽器并由Web瀏覽器顯示所述反饋結(jié)果,測(cè)試人員可以根據(jù)Web瀏覽器此時(shí)顯示的信息判斷測(cè)試結(jié)果。
S112.判斷接口測(cè)試是否完成。
在判斷出接口測(cè)試完成的情況下,服務(wù)端接口測(cè)試方法跳轉(zhuǎn)至步驟S106,以進(jìn)行下一接口的測(cè)試過(guò)程;在判斷出接口測(cè)試未完成的情況下,服務(wù)端接口測(cè)試方法跳轉(zhuǎn)至步驟S108,以進(jìn)行對(duì)RPC信息的修改及對(duì)應(yīng)的響應(yīng)操作。
此外,示例性的服務(wù)端接口測(cè)試方法還可以包括判斷所有接口是否測(cè)試完成的步驟,在此不再贅述。
應(yīng)當(dāng)注意,盡管在附圖中以特定順序描述了本公開(kāi)中方法的各個(gè)步驟,但是,這并非要求或者暗示必須按照該特定順序來(lái)執(zhí)行這些步驟,或是必須執(zhí)行全部所示的步驟才能實(shí)現(xiàn)期望的結(jié)果。附加的或備選的,可以省略某些步驟,將多個(gè)步驟合并為一個(gè)步驟執(zhí)行,以及/或者將一個(gè)步驟分解為多個(gè)步驟執(zhí)行等。
通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員易于理解,這里描述的示例實(shí)施方式可以通過(guò)軟件實(shí)現(xiàn),也可以通過(guò)軟件結(jié)合必要的硬件的方式來(lái)實(shí)現(xiàn)。因此,根據(jù)本公開(kāi)實(shí)施方式的技術(shù)方案可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該軟件產(chǎn)品可以存儲(chǔ)在一個(gè)非易失性存儲(chǔ)介質(zhì)(可以是CD-ROM,U盤(pán),移動(dòng)硬盤(pán)等)中或網(wǎng)絡(luò)上,包括若干指令以使得一臺(tái)計(jì)算設(shè)備(可以是個(gè)人計(jì)算機(jī)、服務(wù)器、觸控終端、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行根據(jù)本公開(kāi)實(shí)施方式的方法。
本領(lǐng)域技術(shù)人員在考慮說(shuō)明書(shū)及實(shí)踐這里公開(kāi)的發(fā)明后,將容易想到本公開(kāi)的其它實(shí)施方式。本申請(qǐng)旨在涵蓋本公開(kāi)的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本公開(kāi)的一般性原理并包括本公開(kāi)未公開(kāi)的本技術(shù)領(lǐng)域中的公知常識(shí)或慣用技術(shù)手段。說(shuō)明書(shū)和實(shí)施例僅被視為示例性的,本公開(kāi)的真正范圍和精神由權(quán)利要求指出。
應(yīng)當(dāng)理解的是,本公開(kāi)并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本公開(kāi)的范圍僅由所附的權(quán)利要求來(lái)限制。