游戲測(cè)試Python入門練習(xí)題

不少游戲測(cè)試同學(xué)在初學(xué)Python爽哎,掌握基礎(chǔ)的語法蜓席,具備一定的編程能力后,不知道如何應(yīng)用到工作當(dāng)中课锌,所以建立了 python-practice-for-game-tester 這個(gè)項(xiàng)目厨内,整理了一些和游戲測(cè)試有關(guān)的Python入門練習(xí)題。

題目清單

  • GM指令模版解析
  • 命令行工具
  • 安卓APK安裝器
  • 安卓截圖工具
  • 安卓CPU渺贤,內(nèi)存監(jiān)控工具
  • PC游戲客戶端Monkey測(cè)試工具
  • 快速生成獎(jiǎng)勵(lì)配置
  • Excel配置表檢查工具
  • 配置表關(guān)鍵字搜索
  • 內(nèi)網(wǎng)APK包下載網(wǎng)頁

建議使用Py3.6以上版本雏胃,IDE推薦Pycharm


001-GM指令模版解析

add_item item_id, num 是增加指定道具的GM指令,如果我們想增加1001~1003這幾個(gè)道具各10個(gè)志鞍,需要這么執(zhí)行3次瞭亮,如果要加大量的道具,那執(zhí)行的次數(shù)就更多了

add_item 1001,10
add_item 1002,10
add_item 1003,10

為了提升效率固棚,設(shè)計(jì)GM指令模版统翩,需要滿足以下幾種形式

add_item {{1001 to 1003}},10
解析為:
add_item 1001,10
add_item 1002,10
add_item 1003,10

add_item {{1001,1003,1006}},10
解析為:
add_item 1001,10
add_item 1003,10
add_item 1006,10

add_item {{1001 to 1005 not 1002,1003}},10
解析為:
add_item 1001,10
add_item 1004,10
add_item 1005,10

002-命令行工具

制作一個(gè)命令行工具仙蚜,將常見的工作輔助腳本整合起來,需要包括的功能有

  • SVN更新指定目錄
  • SVN還原指定目錄
  • 啟動(dòng)游戲客戶端
  • 打開指定文件夾
這幾個(gè)功能都可以通過Python調(diào)用CMD來實(shí)現(xiàn)厂汗,如os.system, os.popen, subprocess.Popen等

參考界面效果委粉,使用prettytable

003-安卓APK安裝器

遍歷文件夾,獲取全部的APK文件娶桦,依次調(diào)用adb install命令安裝到測(cè)試機(jī)中

遍歷可以使用 os.walk 函數(shù)

004-安卓截圖工具

通過adb艳丛,對(duì)當(dāng)前安卓界面進(jìn)行截圖,支持 adb screencap 和 minicap 兩個(gè)方式趟紊,截圖后導(dǎo)出截圖文件到指定文件夾氮双,支持使用pillow庫對(duì)截圖文件的尺寸進(jìn)行壓縮

minicap是STF的一個(gè)工具,截圖速度是screencap方式的幾十倍霎匈,官方定義是:Stream real-time screen capture data out of Android devices戴差。

005-安卓CPU,內(nèi)存監(jiān)控工具

通過adb命令铛嘱,獲取APP的CPU和內(nèi)存占用暖释,使用pyecharts庫,生成測(cè)試結(jié)果圖表

獲取內(nèi)存占用:
adb shell dumpsys meminfo package_name

獲取CPU占用:
adb shell cat /proc/pid/stat

006-PC游戲客戶端Monkey測(cè)試工具

制作一個(gè)PC游戲游戲客戶端可用的Monkey測(cè)試工具墨吓,功能上模擬adb monkey球匕,支持單擊,雙擊帖烘,長(zhǎng)按亮曹,拖動(dòng)等操作,可配置各操作的百分比

可以試試 PyAutoGUI 這個(gè)庫

007-快速生成獎(jiǎng)勵(lì)配置

讀取下圖的獎(jiǎng)勵(lì)配置Excel文件

解析為下邊的Lua格式秘症,reward_type固定為REWARD_TYPE_ITEM照卦,并保存到reward.lua文件中

{
    [1] = {
      [1] = {reward_type = REWARD_TYPE_ITEM, item_type = 2001, item_count = 80,},
      [2] = {reward_type = REWARD_TYPE_ITEM, item_type = 2004, item_count = 80,},
      [3] = {reward_type = REWARD_TYPE_ITEM, item_type = 3001, item_count = 25,},
      [4] = {reward_type = REWARD_TYPE_ITEM, item_type = 6101, item_count = 11,},
    },
    [2] = {
      [1] = {reward_type = REWARD_TYPE_ITEM, item_type = 2001, item_count = 70,},
      [2] = {reward_type = REWARD_TYPE_ITEM, item_type = 2004, item_count = 70,},
      [3] = {reward_type = REWARD_TYPE_ITEM, item_type = 3002, item_count = 20,},
    },
    [3] = {
      [1] = {reward_type = REWARD_TYPE_ITEM, item_type = 2001, item_count = 60,},
      [2] = {reward_type = REWARD_TYPE_ITEM, item_type = 2004, item_count = 60,},
      [3] = {reward_type = REWARD_TYPE_ITEM, item_type = 3003, item_count = 15,},
      [4] = {reward_type = REWARD_TYPE_ITEM, item_type = 6103, item_count = 13,},
    },
}

008-Excel配置表檢查工具

讀取策劃配置的Excel數(shù)值表,檢查是否有配置錯(cuò)誤乡摹,支持以下檢查方式

  • id列是否存在重復(fù)的id役耕,如兩個(gè)2001的id
  • id列是否連續(xù),不存在如 1聪廉,2瞬痘,3,4板熊,4框全,6這樣的錯(cuò)誤
  • Lua數(shù)據(jù)列是否存在中文標(biāo)底符號(hào),如"邻邮,"
  • Lua數(shù)據(jù)列是否存在不成對(duì)的 {} 竣况,如 {{reward_type = REWARD_TYPE_ITEM, item_type = 2001, item_count = 80}

009-配置表關(guān)鍵字搜索

根據(jù)輸入的關(guān)鍵字克婶,在配置表目錄下進(jìn)行遍歷筒严,講包含該關(guān)鍵字的配置表路徑丹泉,關(guān)鍵字所在行數(shù),及附近幾行的內(nèi)容打印出來鸭蛙,支持xml,lua,json等文本格式即可

應(yīng)用場(chǎng)景

策劃:我把配置表里邊的XXX道具全刪了摹恨,你看看有沒有漏的
測(cè)試:噢,我跑下腳本

010-內(nèi)網(wǎng)APK包下載網(wǎng)頁

制作一個(gè)網(wǎng)頁娶视,網(wǎng)頁會(huì)展示已經(jīng)上傳到網(wǎng)頁目錄下的APK文件晒哄,包括文件名字,文件大小肪获,修改日期寝凌,下載二維碼,使用手機(jī)掃描該二維碼孝赫,會(huì)觸發(fā)下載较木。

網(wǎng)頁可以基于Flask框架運(yùn)行,二維碼生成可以使用qrcode庫

完整的項(xiàng)目在Github上青柄,歡迎圍觀和提交練習(xí)代碼 python-practice-for-game-tester

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末伐债,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子致开,更是在濱河造成了極大的恐慌峰锁,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,311評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件双戳,死亡現(xiàn)場(chǎng)離奇詭異虹蒋,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)飒货,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門千诬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人膏斤,你說我怎么就攤上這事徐绑。” “怎么了莫辨?”我有些...
    開封第一講書人閱讀 152,671評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵傲茄,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我沮榜,道長(zhǎng)盘榨,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,252評(píng)論 1 279
  • 正文 為了忘掉前任蟆融,我火速辦了婚禮草巡,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘型酥。我一直安慰自己山憨,他們只是感情好查乒,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評(píng)論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著郁竟,像睡著了一般玛迄。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上棚亩,一...
    開封第一講書人閱讀 49,031評(píng)論 1 285
  • 那天蓖议,我揣著相機(jī)與錄音,去河邊找鬼讥蟆。 笑死勒虾,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的瘸彤。 我是一名探鬼主播从撼,決...
    沈念sama閱讀 38,340評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼钧栖!你這毒婦竟也來了低零?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,973評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤拯杠,失蹤者是張志新(化名)和其女友劉穎掏婶,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體潭陪,經(jīng)...
    沈念sama閱讀 43,466評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡雄妥,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了依溯。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片老厌。...
    茶點(diǎn)故事閱讀 38,039評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖黎炉,靈堂內(nèi)的尸體忽然破棺而出枝秤,到底是詐尸還是另有隱情,我是刑警寧澤慷嗜,帶...
    沈念sama閱讀 33,701評(píng)論 4 323
  • 正文 年R本政府宣布淀弹,位于F島的核電站,受9級(jí)特大地震影響庆械,放射性物質(zhì)發(fā)生泄漏薇溃。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評(píng)論 3 307
  • 文/蒙蒙 一缭乘、第九天 我趴在偏房一處隱蔽的房頂上張望沐序。 院中可真熱鬧,春花似錦、人聲如沸策幼。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽垄惧。三九已至,卻和暖如春绰寞,著一層夾襖步出監(jiān)牢的瞬間到逊,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來泰國打工滤钱, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留觉壶,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,497評(píng)論 2 354
  • 正文 我出身青樓件缸,卻偏偏與公主長(zhǎng)得像铜靶,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子他炊,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 移動(dòng)APP測(cè)試講義 本篇講義主要闡述APP的手工測(cè)試要點(diǎn)争剿,并概括介紹主流的APP測(cè)試框架。 1. APP測(cè)試的準(zhǔn)備...
    厲鉚兄閱讀 9,597評(píng)論 6 109
  • Web UI測(cè)試自動(dòng)化 splinter - web UI測(cè)試工具痊末,基于selnium封裝蚕苇。 selenium -...
    Thea0216閱讀 5,799評(píng)論 2 48
  • 大家有沒有關(guān)注一年一度的時(shí)(肉)尚(體)盛宴——維多利亞的秘密大秀呢?我們這種普通人即使看不了現(xiàn)場(chǎng)炒刁,也要被滿屏幕的...
    八條魚理財(cái)閱讀 364評(píng)論 0 1
  • 又到了周六交作業(yè)的時(shí)間了恩沽,總是覺得沒有東西可寫,然后周五的第一反應(yīng)就想用請(qǐng)假來逃避翔始,我在想是什么原因?qū)е逻@樣...
    穎卓閱讀 247評(píng)論 0 1
  • 林海峰 今天來聊聊秋天飒筑,這季節(jié)我們?cè)撟鲂┦裁?一年四季,上天的恩賜绽昏,我們要好好享用 進(jìn)入秋天协屡,我們就不用再把生果當(dāng)...
    ykxcxlm閱讀 267評(píng)論 0 0