測試方案的產(chǎn)生
測試方案屬于軟件工程的范疇往史,對于策劃人員來講是測試游戲的主力軍守呜。好象沒聽說過哪個策劃將測試過程描繪的很愉快粱玲,因為測試本身是一個非趁Ш瑁枯燥和痛苦的事情昧旨。(讓你沒日沒夜的反復(fù)玩同一個游戲,幾十次幾百次玩一個重復(fù)的甚至是毫無樂趣的內(nèi)容祥得,沒有人會認為這個過程很有趣兔沃。)一套合理的測試方案可以盡可能減少測試人員的工作量,也能夠讓測試出的問題能夠盡快解決啃沪,這就需要測試方案的制訂人員對游戲開發(fā)有全面的了解粘拾,并能夠掌握好測試的進度,其中的難度可想而知了创千。
測試是游戲開發(fā)一個極為重要的組成部分缰雇,其所需要的時間一般要占去整個開發(fā)周期的1/3左右。測試貫穿于整個開發(fā)進程追驴,小規(guī)模的模塊測試是由程序人員自行完成的械哟,對策劃來講,如何完成最終的產(chǎn)品測試才是真正需要關(guān)心的殿雪。按照軟件工程的理論暇咆,測試方法主要有兩種:黑盒測試與白盒測試。所謂黑盒測試就是把要測試的對象當(dāng)作一個黑盒子丙曙,不需要知道里面是怎么處理的爸业,只要對輸入和輸出數(shù)據(jù)進行測試就可以了;而白盒測試正好相反亏镰,測試者必須對測試對象的內(nèi)部處理過程非常了解扯旷,對里面所有的分支和循環(huán)進行實驗從而達到測試的目的。黑盒測試與白盒測試都是最基本的測試方法索抓,屬于低層的測試理論钧忽,實際的測試方案都是在這兩種測試方法基礎(chǔ)上產(chǎn)生出來的。
對于游戲的測試逼肯,也不外乎這兩種測試方法耸黑。基于黑盒測試所產(chǎn)生的測試方案屬于高端測試篮幢,主要是在操作層面上對游戲進行測試大刊;基于白盒測試所產(chǎn)生的測試方案屬于低端測試,是對各種設(shè)計細節(jié)方面的測試三椿。黑盒測試中不需要知道里面是如何運行的缺菌,也不用知道內(nèi)部算法如何設(shè)計曲尸,只要看游戲中戰(zhàn)斗或者情節(jié)發(fā)展是否是按照要求來進行的就可以了。這種測試可以找一些對游戲不是很了解的玩家來進行男翰,只要寫清楚要干什么,最后達到什么樣的效果纽乱,并記錄下游戲過程中所出現(xiàn)的問題蛾绎。而白盒測試就需要知道內(nèi)部的運算方法,比如A打B一下鸦列,按照A和B現(xiàn)在的狀態(tài)應(yīng)該掉多少血之類都應(yīng)當(dāng)屬于這種測試租冠。白盒測試需要策劃人員自己來完成,因為內(nèi)部的算法只有開發(fā)人員自己才清楚薯嗤,而且發(fā)現(xiàn)問題策劃是最容易知道如何解決該問題的人顽爹。由于測試的工作量巨大,合理安排好測試和修正BUG的時間比例非常關(guān)鍵骆姐,否則很容易出現(xiàn)發(fā)現(xiàn)了問題卻沒有時間改正或者問題堆在一起無法解決的矛盾镜粤。測試設(shè)計應(yīng)當(dāng)在開發(fā)的設(shè)計階段就要完成,如果開發(fā)初期沒有給安排出合理的時間玻褪,那么最后的結(jié)果肯定是不停的跳票肉渴!
在測試方案中,設(shè)計人員要根據(jù)需要把黑盒測試带射、白盒測試有效的結(jié)合在一起同规,并且按照步驟劃分好測試的時間段。根據(jù)游戲開發(fā)過程窟社,測試大致可以分成單元測試券勺、模塊測試、總體測試和產(chǎn)品測試幾個部分灿里。單元測試一般集中在細節(jié)部分关炼,主要是在游戲引擎開發(fā)階段對引擎的構(gòu)造能力和完善性進行檢測。該部分的工作要求細致嚴禁钠四,因為任何一點小的紕漏都可能導(dǎo)致后期大量的BUG產(chǎn)生盗扒。這時要求程序開發(fā)人員與策劃達到無隔閡的交流,策劃人員要清楚該引擎任何一個功能單元的使用方法和效果缀去,這樣才能夠保證測試中能即使發(fā)現(xiàn)問題并指出問題的所在侣灶。模塊測試是在游戲開發(fā)進程中按照階段進行的,每當(dāng)一個模型產(chǎn)生后就需要對該部分進行一次集中測試缕碎,從而保證系統(tǒng)的堅固和完善褥影。模塊之間的接口測試也屬于該部分的工作,就是說各個游戲模塊之間如何實現(xiàn)過度咏雌,數(shù)據(jù)如何進行交換都要進行嚴格的測試凡怎。往往在模塊內(nèi)部測試時一切正常校焦,把模塊拼裝在一起后反而問題百出,這就需要在階段性模塊測試中及時解決统倒!總體測試屬于比較高層的測試寨典,在游戲的DEMO基本完成后,要從宏觀上把整個游戲合成在一起房匆,這時就要求有全面控制進度的能力耸成。最終的產(chǎn)品測試是游戲質(zhì)量保證的最后一道關(guān)卡,要求大量的非開發(fā)人員介入進行地毯式轟炸浴鸿!產(chǎn)品測試往往也會伴隨一些市場活動井氢,這就不是我們現(xiàn)在要討論的范疇了。
我們已經(jīng)知道了測試過程分成幾個階段岳链,下面就一起來看看具體要包括那些內(nèi)容:
測試的時間分配:測試時間如何分配會直接影響到開發(fā)的進度花竞,它包含測試時間、測試結(jié)果匯總時間以及修改錯誤的時間等幾個部分掸哑。一般來說约急,開發(fā)人員只認為測試時間才是需要分配的,其實合理的安排測試總結(jié)和修改BUG等工作占用的時間才是更多的举户!如果不進行測試情況匯總烤宙,項目管理者就無法弄清到底是哪些部分出了問題;不馬上對發(fā)現(xiàn)的問題進行修改就會導(dǎo)致更多的問題發(fā)生俭嘁。所以定期測試酬凳、發(fā)現(xiàn)問題轧粟、解決問題才是最合理的彬犯,把整個開發(fā)周期劃分為幾個階段定期測試是對產(chǎn)品質(zhì)量的根本保證婿着!科學(xué)安排測試的時間能夠用最少的代價解決最多的問題,否則把測試都堆積在最后結(jié)果只會是一團糟近她!
測試人員的安排:測試人員的選擇和調(diào)配對游戲質(zhì)量來講是非常關(guān)鍵的叉瘩。測試人員盡量不要選擇游戲的開發(fā)人員,只有對游戲沒有任何了解的人才能真正的發(fā)現(xiàn)程序或設(shè)計中的問題粘捎,雖然他可能對程序和游戲設(shè)計一點都不懂薇缅。如果能有一支專門的測試隊伍當(dāng)然是最好的,在經(jīng)費和人員實在緊張的情況下把其他非開發(fā)部門的人借調(diào)一下不失為一個好辦法攒磨。
測試內(nèi)容清單:這部分要求測試方案設(shè)計人員精心的考慮計算泳桦,盡量把測試內(nèi)容精確到操作級。意思就是說最好細化到某測試人員點擊鼠標幾百次這種程度娩缰,因為測試人員是對你的游戲內(nèi)容一點都不了解的灸撰,只有你把任務(wù)全都明確后才可以收到預(yù)期的效果。只規(guī)定某人去玩這個游戲然后給予反饋是不負責(zé)任的做法,這種測試方案只能當(dāng)作垃圾給丟到廢紙桶里面去浮毯!要對每個測試人員的工作明確下去完疫,用測試表格的形式進行填寫測試報告并簽字寫清楚測試時間,才算是合格的測試方案债蓝。
測試結(jié)果匯報:最終測試報告匯總上來壳鹤,策劃人員要對全部方案進行評估并進行分類,把測試中發(fā)現(xiàn)的問題確定解決優(yōu)先級然后反饋給相關(guān)部門饰迹。問題特別嚴重的要敢于要求返工器虾,任何一點小問題也不能放過,嚴格的測試才能帶來高質(zhì)量的游戲產(chǎn)品蹦锋,這個法則適用于任何產(chǎn)業(yè),游戲也不例外欧芽!
調(diào)整開發(fā)進度:由于測試發(fā)現(xiàn)的問題所帶來的進度影響要及時反饋給上級領(lǐng)導(dǎo)莉掂,然后馬上更新項目進度表,并注明更改原因千扔。因為開發(fā)進度的調(diào)整關(guān)系到很多部門的工作憎妙,所以最好在早期設(shè)計進度時就把測試時間預(yù)算進去,但實際上大多數(shù)情況下開發(fā)進度的變化是非常頻繁的曲楚。如何休整進度還不影響到游戲完成的最終時間厘唾,對于任何項目管理人員來說都是一個挑戰(zhàn)!
測試方案一旦確立龙誊,剩下的就是煩瑣和枯燥的機械工作了抚垃。測試是最痛苦的,但沒有測試游戲是不可能成為產(chǎn)品趟大,這也是國內(nèi)大多數(shù)趕工期的游戲BUG百出的問題所在鹤树。科學(xué)的制訂測試方案并協(xié)調(diào)好各部門之間的進度逊朽,對任何一個項目來說都是至關(guān)重要的事情罕伯,對于剛?cè)腴T的策劃來講,學(xué)會寫測試方案是必修的課程之一叽讳。
測試工作的全面完工追他,標志著項目開發(fā)的結(jié)束。但對于策劃來說岛蚤,你的工作還沒有完邑狸,接下來你就要開始教給玩家如何玩這個游戲,如何完成一份新手教程將在以后慢慢為大家講解灭美!