国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

基于TCP協(xié)議的游戲代理接口測(cè)試工具<一>:設(shè)計(jì)初衷與工具構(gòu)想

這篇具有很好參考價(jià)值的文章主要介紹了基于TCP協(xié)議的游戲代理接口測(cè)試工具<一>:設(shè)計(jì)初衷與工具構(gòu)想。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

設(shè)計(jì)初衷

大勢(shì)所逼

眾所周知,區(qū)別于HTTP之類的協(xié)議,由于tcp協(xié)議包體通信的高度定制化導(dǎo)致業(yè)內(nèi)基本沒(méi)有通用的接口工具用于游測(cè)人員進(jìn)行日常使用,大部分的情況是基于這種狀態(tài)下只能進(jìn)行測(cè)試工具定制。在日益興盛的游戲行業(yè)中,對(duì)于游測(cè)的各種測(cè)試維度的要求也在逐步增長(zhǎng),而接口測(cè)試,也就是常規(guī)所說(shuō)的協(xié)議測(cè)試在日常的測(cè)試工作中重要性和占比也是高居不下,畢竟直接關(guān)系到游戲的營(yíng)收和壽命,從而在自我折磨的道路上越走越遠(yuǎn)。

難點(diǎn)與破局

  • 高度定制化:由于tcp在游戲內(nèi)應(yīng)用的特性,在協(xié)議的約定上面就必定存在各種各樣的特殊設(shè)定,常見(jiàn)的有字段類型-int、string、array之類和定制類型、字段位數(shù)、包體預(yù)留位乃至加密字段等等。所以要去模擬協(xié)議和解析協(xié)議就必須要實(shí)現(xiàn)一套與雙端(C/S)一致的封包和解析機(jī)制;
  • 不可避免的自動(dòng)生成:由于需要定制解析和封包,所以必須要面臨的一個(gè)問(wèn)題就是要構(gòu)造出所有協(xié)議的封包和解析方法,而這個(gè)時(shí)候面對(duì)整個(gè)游戲項(xiàng)目下的協(xié)議處理,手寫方法明顯是不現(xiàn)實(shí)且成本巨大的。因此必須要根據(jù)公司或者項(xiàng)目組內(nèi)的生成方式再一模一樣復(fù)刻出雙端協(xié)議封包和解析的自動(dòng)生成方法(PS:當(dāng)然如果測(cè)試權(quán)限夠或者公司內(nèi)部有單獨(dú)的測(cè)試版本可供使用-即測(cè)試可以直接改造游戲代碼的話就不用重復(fù)造輪子了);
  • 測(cè)試定制化:測(cè)試工具做出來(lái)肯定是為了給測(cè)試服務(wù)的,所以測(cè)試用途、便利性、功能拓展方面也需要有充分的考慮。以常規(guī)的協(xié)議測(cè)試舉例:測(cè)試人員通過(guò)wireshark之類的工具抓取到協(xié)議包,提取到data包之后,再通過(guò)對(duì)照協(xié)議規(guī)則進(jìn)行對(duì)應(yīng)數(shù)據(jù)提取,提取出來(lái)后再對(duì)數(shù)據(jù)進(jìn)行編解碼從而得到可讀的數(shù)據(jù),然后才能進(jìn)行數(shù)據(jù)驗(yàn)證,判斷協(xié)議數(shù)據(jù)是否正常。在這個(gè)流程上面就能提取到多個(gè)工具的測(cè)試用途需求:協(xié)議抓取、協(xié)議解析、可視化,同時(shí)延伸出:協(xié)議攔截、特定協(xié)議抓取、二次封包、包體構(gòu)造轉(zhuǎn)發(fā)等等;

基于TCP協(xié)議的游戲代理接口測(cè)試工具<一>:設(shè)計(jì)初衷與工具構(gòu)想
基于TCP協(xié)議的游戲代理接口測(cè)試工具<一>:設(shè)計(jì)初衷與工具構(gòu)想

  • 承上啟下-破局:基于完整的解析機(jī)制下的壓測(cè),已經(jīng)存在上述機(jī)制之后,批量真實(shí)登錄不是夢(mèng),用于服務(wù)端場(chǎng)景壓測(cè)、登錄壓測(cè)等等用途也是順勢(shì)而為;接口測(cè)試自動(dòng)化開(kāi)展,基于協(xié)議攔截和包體封裝的機(jī)制可以輕松實(shí)現(xiàn)協(xié)議錄制,然后輔以自動(dòng)化測(cè)試框架pytest+allure即可逐步實(shí)現(xiàn)接口自動(dòng)化。

工具構(gòu)想

工具開(kāi)發(fā)歷程(記錄走過(guò)的彎路<O…O>):簡(jiǎn)易測(cè)試客戶端–>游戲內(nèi)置可視化工具–>接口代理工具。
提效是測(cè)試第一生產(chǎn)力(順便創(chuàng)造摸魚空間,emm,順便…)

  • 簡(jiǎn)易測(cè)試客戶端:作為最初版的接口工具,它的初衷往往是樸素的,當(dāng)時(shí)由于組內(nèi)測(cè)試人員較少(emm,沒(méi)錯(cuò)就在下一個(gè)),加上公司體量相對(duì)較小,個(gè)人算是組內(nèi)引進(jìn)的首任測(cè)試人員,各種基建和測(cè)試方面的構(gòu)建基本都是從0開(kāi)始,所以初版的工具只是為了解決一個(gè)小小問(wèn)題:批量創(chuàng)建測(cè)試號(hào)。它的設(shè)計(jì)就是基于Python寫一個(gè)簡(jiǎn)易的客戶端用于連接游戲服務(wù)器,然后定制協(xié)議內(nèi)容根據(jù)設(shè)定的順序發(fā)送給到服務(wù)端,由于當(dāng)時(shí)缺少解析機(jī)制,全靠手寫協(xié)議解析,從而導(dǎo)致可擴(kuò)展性很差,維護(hù)成本也很高,后續(xù)在應(yīng)用時(shí)測(cè)試用途也逐步變成有限的幾種。當(dāng)前如果能加上前面所說(shuō)的全套解析機(jī)制后,就能發(fā)揮更大的作用;
    基于TCP協(xié)議的游戲代理接口測(cè)試工具<一>:設(shè)計(jì)初衷與工具構(gòu)想

  • 游戲內(nèi)置可視化工具:在上一代的基礎(chǔ)上痛定思痛:手動(dòng)編碼折磨、無(wú)法支持可視化,為了避過(guò)協(xié)議解析這塊的工作(為什么不直接上解析?實(shí)在是規(guī)則太多太麻煩),調(diào)整方案改為在游戲客戶端內(nèi)搭建一個(gè)工具功能。通過(guò)對(duì)游戲客戶端內(nèi)部協(xié)議通信基類的分析,發(fā)現(xiàn)在基類的解析方法中可以很方便的攔截和抓取到明文的協(xié)議內(nèi)容,所以心生一計(jì)-‘借雞生蛋’,在客戶端現(xiàn)有的機(jī)制上增加一個(gè)測(cè)試模塊,用于獲取協(xié)議基類的通信數(shù)據(jù)同時(shí)通過(guò)unity的Gui搭建一個(gè)內(nèi)嵌的展示面板展示出協(xié)議數(shù)據(jù)和其他操作。但是這個(gè)方法面臨一個(gè)問(wèn)題就是內(nèi)嵌測(cè)試代碼到游戲主題中是一個(gè)比較大的風(fēng)險(xiǎn)項(xiàng),盡管采用的是非攔截式(即不攔截協(xié)議只收集一份)的方式,在缺少特定分割的測(cè)試環(huán)境的情況下也是有不少的風(fēng)險(xiǎn),同時(shí)內(nèi)嵌的方式意味著工具的兼容性會(huì)相對(duì)一般,針對(duì)不同項(xiàng)目要額外處理接入,另外無(wú)法支持多用戶登錄,最后在組內(nèi)討論缺少測(cè)試環(huán)境情況下,風(fēng)險(xiǎn)不可接受,該方案夭折(不過(guò)有環(huán)境和條件的同仁可以試試,業(yè)內(nèi)也有類似的做法);
    基于TCP協(xié)議的游戲代理接口測(cè)試工具<一>:設(shè)計(jì)初衷與工具構(gòu)想

  • 接口代理工具:為了在方案二的基礎(chǔ)上完全與游戲版本解耦,通過(guò)搭建中繼服務(wù)器來(lái)進(jìn)行協(xié)議
    次處理。游戲客戶端連接中繼服務(wù)器,然后中繼服務(wù)器再連接游戲服務(wù)器,從而實(shí)現(xiàn)游戲客戶端和游戲服務(wù)端所有的通信數(shù)據(jù)都經(jīng)由中繼服務(wù)器進(jìn)行轉(zhuǎn)發(fā)處理,而中繼服務(wù)器可以對(duì)轉(zhuǎn)發(fā)的數(shù)據(jù)進(jìn)行二次的處理,并且支持可視化的需求。在此基礎(chǔ)上搭建完整的解析機(jī)制,可拓展新更強(qiáng),同時(shí)可以支持即插即用。
    基于TCP協(xié)議的游戲代理接口測(cè)試工具<一>:設(shè)計(jì)初衷與工具構(gòu)想文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-436312.html

到了這里,關(guān)于基于TCP協(xié)議的游戲代理接口測(cè)試工具<一>:設(shè)計(jì)初衷與工具構(gòu)想的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 接口測(cè)試工具——Postman測(cè)試工具 & Swagger接口測(cè)試+SpringBoot整合 & JMeter高并發(fā)測(cè)試工具

    接口測(cè)試工具——Postman測(cè)試工具 & Swagger接口測(cè)試+SpringBoot整合 & JMeter高并發(fā)測(cè)試工具

    頭部攜帶token 類型選擇JSON https://apifox.com/ swagger2,較多 swagger3, Knife4j的前身是swagger-bootstrap=ui,前身swagger–bootstrap-ui是一個(gè)純swagger–ui的ui皮膚項(xiàng)目 https://doc.xiaominfo.com/docs/quick-start 底層就是swagger 序號(hào) 注解 作用 1 @Api(tags = “圖書的api接口類”) 左側(cè)名字 2 @ApiOperation(“findPa

    2024年02月12日
    瀏覽(31)
  • TCP Socket Client 測(cè)試工具,并發(fā)測(cè)試

    TCP Socket Client 測(cè)試工具,并發(fā)測(cè)試

    TCP協(xié)議 Socket客戶端測(cè)試程序 發(fā)送數(shù)據(jù)支持ASCII與16進(jìn)制格式 可以模擬并發(fā)壓力測(cè)試 創(chuàng)建終端,然后發(fā)送數(shù)據(jù) ? 工具下載 ?

    2024年02月12日
    瀏覽(21)
  • 如何使用Python編寫一個(gè)代理池測(cè)試工具

    部分?jǐn)?shù)據(jù)來(lái)源: ChatGPT 背景: ????????在進(jìn)行網(wǎng)絡(luò)爬蟲時(shí),我們經(jīng)常需要使用代理池來(lái)防止IP被網(wǎng)站禁封。代理池是一個(gè)保存多個(gè)代理IP地址的數(shù)據(jù)庫(kù),我們可以從數(shù)據(jù)庫(kù)中隨機(jī)選擇一個(gè)代理地址來(lái)進(jìn)行網(wǎng)絡(luò)請(qǐng)求,避免過(guò)多請(qǐng)求來(lái)自同一個(gè)IP地址。 為了提高爬蟲程序的穩(wěn)定

    2024年02月08日
    瀏覽(25)
  • 一文搞定接口測(cè)試及常用接口測(cè)試工具解析

    一文搞定接口測(cè)試及常用接口測(cè)試工具解析

    目錄 首先,什么是接口呢? 一、常見(jiàn)接口: 二、前端和后端: 三、什么是接口測(cè)試: 四、接口組成 五、為什么要做接口測(cè)試: 六、接口測(cè)試怎么測(cè): ?七、用什么工具測(cè) 接口一般來(lái)說(shuō)有兩種,一種是程序內(nèi)部的接口,一種是系統(tǒng)對(duì)外的接口。 系統(tǒng)對(duì)外的接口:比如你要

    2024年02月03日
    瀏覽(22)
  • 接口測(cè)試及接口抓包常用的測(cè)試工具

    接口測(cè)試及接口抓包常用的測(cè)試工具

    接口測(cè)試是測(cè)試系統(tǒng)組件間接口的一種測(cè)試。接口測(cè)試主要用于檢測(cè)外部系統(tǒng)與系統(tǒng)之間以及內(nèi)部各個(gè)子系統(tǒng)之間的交互點(diǎn)。測(cè)試的重點(diǎn)是要檢查數(shù)據(jù)的交換,傳遞和控制管理過(guò)程,以及系統(tǒng)間的相互邏輯依賴關(guān)系等。 是節(jié)省時(shí)間前后端不同步時(shí)便可以進(jìn)行測(cè)試; 是測(cè)試一

    2024年02月12日
    瀏覽(24)
  • TCP&UDP測(cè)試工具的使用

    TCP&UDP測(cè)試工具的使用

    1、在電腦上打開(kāi)測(cè)試工具 2、該測(cè)試工具分為客戶端和服務(wù)器兩類,首先創(chuàng)建一個(gè)服務(wù)端 3、默認(rèn)端口號(hào)點(diǎn)擊確定 4、點(diǎn)擊啟動(dòng)服務(wù)器,此時(shí)我們可以通過(guò)外部客戶端與該服務(wù)器相連 5、在此,我們重新打開(kāi)一次軟件,模擬客戶端并與服務(wù)器通信,打開(kāi)以后,選擇創(chuàng)建連接?

    2024年02月11日
    瀏覽(20)
  • 接口測(cè)試流程、測(cè)試點(diǎn)和測(cè)試工具

    目錄 前言: 一、什么情況下開(kāi)展接口測(cè)試? 二、如何進(jìn)行接口測(cè)試

    2024年02月11日
    瀏覽(24)
  • 壓力測(cè)試+接口測(cè)試(工具jmeter)

    jmeter是apache公司基于java開(kāi)發(fā)的一款開(kāi)源壓力測(cè)試工具,體積小,功能全,使用方便,是一個(gè)比較輕量級(jí)的測(cè)試工具,使用起來(lái)非常簡(jiǎn)單。因 為jmeter是java開(kāi)發(fā)的,所以運(yùn)行的時(shí)候必須先要安裝jdk才可以。jmeter是免安裝的,拿到安裝包之后直接解壓就可以使用,同時(shí)它在 linux

    2024年01月17日
    瀏覽(27)
  • 接口測(cè)試及接口抓包常用測(cè)試工具和方法?

    接口測(cè)試及接口抓包常用測(cè)試工具和方法?

    作為測(cè)試領(lǐng)域中不可或缺的一環(huán),接口測(cè)試和抓包技術(shù)在軟件開(kāi)發(fā)過(guò)程中扮演著至關(guān)重要的角色。不論你是新手還是有一些經(jīng)驗(yàn)的小伙伴,本篇文章都會(huì)為你詳細(xì)介紹接口測(cè)試的基本概念、常用測(cè)試工具和實(shí)際操作技巧,讓你輕松掌握這一技能。 接口測(cè)試:什么是接口?為什

    2024年02月12日
    瀏覽(24)
  • 軟件接口測(cè)試是什么?有哪些好用的接口測(cè)試工具?

    軟件接口測(cè)試是什么?有哪些好用的接口測(cè)試工具?

    在軟件開(kāi)發(fā)中,接口是不可避免的。軟件接口測(cè)試是一種驗(yàn)證應(yīng)用程序接口是否按照設(shè)計(jì)規(guī)范進(jìn)行交互和協(xié)作的測(cè)試方法。接口測(cè)試是將模塊之間的接口連接在一起以進(jìn)行完整系統(tǒng)測(cè)試的關(guān)鍵部分。 當(dāng)軟件開(kāi)發(fā)過(guò)程中不同模塊之間需要數(shù)據(jù)交互,采用接口協(xié)議來(lái)實(shí)現(xiàn)模塊之間

    2024年02月11日
    瀏覽(23)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包