遊戲測試

遊戲測試

遊戲測試作為軟體測試的一部分,它具備了軟體測試所有的共同的特性:測試的目的是發現軟體中存在的缺陷。測試都是需要測試人員按照產品行為描述來實施。產品行為描述可以是書面的規格說明書,需求文檔,產品檔案,或是用戶手冊,原始碼,或是工作的可執行程式。

基本介紹

  • 中文名:遊戲測試
  • 外文名:Video game testing
  • 實質原始碼
  • 特點:工作的可執行程式
產生背景,基本概述,工作原理,測試流程,可玩性測試,設計評審,經典解析,策劃測試,遊戲壓力測試,

產生背景

IT業一直經歷著“寒冬”,但是遊戲軟體業卻呈現出了勃勃生機。網路遊戲僅在中國遊戲市場出現不過兩三年,正式投入商業運營的遊戲數目已超過1000款,但眾所周知,都是國外的(主要是韓國的遊戲)統治著國內大部分的市場,國內遊戲軟體想要突圍而出,主要從二個方面,一是可玩性,由於中國有上下五千年的傳統文化,博大精深,是我們得天獨厚的優勢,二是遊戲的質量,遊戲測試作為遊戲開發中質量保證的最重要的環節,在遊戲設計與開發的過程中發揮著越來越重要的作用。

基本概述

遊戲測試作為軟體測試的一部分,它具備了軟體測試所有的一切共同的特性:
遊戲測試遊戲測試
1測試的目的是發現軟體中存在的缺陷。
2測試都是需要測試人員按照產品行為描述來實施。產品行為描述可以是書面的規格說明書,需求文檔,產品檔案,或是用戶手冊,原始碼,或是工作的可執行程式。
3每一種測試都需要產品運行於真實的或是模擬環境之下。
4每一種測試都要求以系統方法展示產品功能,以證明測試結果是否有效,以及發現其中出錯的原因,從而讓程式人員進行改進。
總而言之,測試就是發現問題並進行改進,從而提升軟體產品的質量。遊戲測試也具備了以上的所有特性,不過由於遊戲的特殊性,所以遊戲測試則主要分為兩部分組成,一是傳統的軟體測試,二遊戲本身的測試,由於遊戲特別是網路遊戲,它相當於網上的虛擬世界,是人類社會的另一種方式的體現,所以也包含了人類社會的一部分特性,同時它又是遊戲所以還涉及到娛樂性,可玩性等獨有特性,所以測試的面相當的廣。 我們稱之為遊戲世界測試,常由真實用戶參與完成,多以封測內測等形式出現主要有以下幾個特性:
1遊戲情節的測試,主要指遊戲世界中的任務系統的組成,有人也稱為遊戲世界的事件驅動,我喜歡稱為遊戲情感世界的測試。
2遊戲世界的平衡測試,主要表現在經濟平衡,能力平衡(包含技能,屬性等等),保證遊戲世界競爭公平。
3遊戲文化的測試,比如整個遊戲世界的風格,是中國文化主導,還是日韓風格等等,大到遊戲整體,小到NPC(遊戲世界人物)對話,比如一個書生,他的對話就必需斯文,不可以用江湖語言。

工作原理

要了解如何測試遊戲必需了解如何做遊戲,了解它的開發過程,才能真正的測好遊戲。遊戲要成功,其基本的必要條件有三。分別為Vision(設計)、technology(技術)和Process(過程)。 遊戲情節的測試:主要指遊戲世界中的任務系統的組成。
遊戲測試遊戲測試
遊戲設計與測試:設計階段是做測試案例設計的最好時機。很多組織要么根本不做測試計畫和測試設計,要么在即將開始執行測試之前才飛快地完成測試計畫和設計。在這種情況下,測試只是驗證了程式的正確性,而不是驗證整個系統本該實現的東西。而測試則會很明確,因為測試計畫已經寫的很明確,需要測試那些遊戲系統,但是還需要了解系統的組成,而設計階段則是設計系統的過程,所有的重要系統均是用UML狀態圖進行了詳細的描述,比如用戶登入情況。

測試流程

1、遊戲開發公司通過各種調查、評估,確定自己要開發遊戲的範圍或者項目。比如確定音樂類,或者MMORPG等等。然後測試就需要對市面上的此類遊戲(主要是比較熱門的此類型遊戲)進行測試,測試分工分別去玩和開發項目相同類型的遊戲。比如音樂類:一個去玩勁舞團、一個去玩DJ……以此類推。然後通過一段時間的遊戲,對這個遊戲做出一個全面的測試報告:可玩性、功能方面、畫面、性能、所需配製、社群體系等等。(產品說明書的形成)
遊戲測試遊戲測試
2、遊戲開發階段,隨著遊戲文檔說明、策劃案例的編寫和遊戲初期版本的形成。就可以去編寫最早期的測試規範、測試計畫測試用例等等。其實遊戲測試的用例相對軟體測試的用例會龐大很多,遊戲本身就是一個比軟體功能多很多的軟體,自然用例分的地方也會多很多,可以分:單人、多人、主流程、對局裡等等。(產品設計文檔、測試文檔初期形成)
3、隨著遊戲初期版本的形成,公司會聯繫遊戲運營商共同去合作開發此遊戲。也就是去找客戶了,當然有的大型公司自產自銷就另當別論了。有了合作夥伴,其實是客戶。客戶自然會對遊戲提出種種需求,對版本提出各種意見,還有各個版本交納的時間和遊戲內測公測時間等等細節。(進度表、客戶需求形成)
4、根據客戶的種種需求,遊戲會進行變化。經常是新出的版本和上一個版本會有天壤之別,感覺不是一個遊戲。策劃也會出來很多新的文檔,這時候就要對文檔進行測試,也就是靜態測試。很多人認為靜態測試沒用,個人感覺靜態測試很重要。雖然我在的公司不重視……扯遠了。這個時期測試會比較忙,又要進行靜態測試,又要寫測試用例,還要進行功能測試性能測試、壓力測試,然後還要對客戶進行遊戲的演示。每個版本提交時候更是要瘋狂的測試,每到這時候基本上要一直加班,基本11點前沒到過家。然後還要和客戶方的測試進行交流,回答人家的各種問題等等,測試用例、測試報告要提交給人家,各種回歸測試等等,反正是忙的一塌糊塗。
5、經過一段時間的版本更新,進入到了內測後期和公測階段。這時候會出一些遊戲相關的東西,比如GM TOOLS等等,還要對此進行詳細的測試。其實GM TOOLS單拿出來都能叫軟體測試了!

可玩性測試

遊戲可玩性測試:遊戲可玩性測試也是非常重要的一塊,主要包含四個方面:
遊戲測試——cs遊戲測試——cs
1、遊戲世界的搭建,包含聊天功能,交易系統,組隊等可以讓玩家在遊戲世界互動的平台。
2、遊戲世界事件的驅動,主要指任務。
3、遊戲世界的競爭與平衡。
4、遊戲世界文化蘊涵,遊戲的風格與體現。
這種測試主要體現在遊戲可玩性方面,雖然策劃時我們對可玩性作了一定的評估,但這是總體上的,但一些具體的涉及到某個數據的分析,比如PK參數的調整,技能的增加等一些增強可玩性的測試則需要職業玩家對它進行分析,這裡我們主要通過四種方式來進行:
1、內部的測試人員,他們都是精選的職業玩家分析人員,對遊戲有很深的認識,在內部測試時,對上面的四點進行分析。
2、利用外部遊戲媒體專業人員對遊戲作分析與介紹,既可以達到宣傳的效果,又可以達到測試的目的,通常這種方式是比較好的。
3、利用外部一定數量的玩家,對外圍系統的測試,他們是普通的玩家,但卻是我們最主要的目標,主要的來源是大中院校的學生等等,主要測試遊戲的可玩性與易用性,發現一些外圍的Bug
4、遊戲進入到最後階段時,還要做內測,公測,有點像套用軟體的beta版的測試,讓更多的人參與測試,測試大量玩家下的運行情況。

設計評審

在設計評審時,測試人員的介入可以充分的對當前的系統構架發表自己的意見,由於測試人員的眼光是最苛刻的,並且有多年的測試經驗,可以比較早的發現曾經出現的設計上的問題,比如在玩家轉換伺服器時是否作了事務的支持與數據的校驗,在過去設計中由於沒有事務支持與數據的校驗從而導致玩家數據丟失,而這些風險可以在早期就規避掉。上面所說的是對遊戲程式本身的測試設計,對於遊戲情節的測試則可以從策劃獲得,由於前期的策劃階段只是對遊戲情節大方向上的描述,並沒有針對某一個具體的情節進行設計,進入設計階段時,某個遊戲情節邏輯已經完整的形成了,策劃可以給出情節的詳細設計說明書,稱為任務說明書,通過任務說明書我們可以設計出任務測試案例,比如某一個門派的任務由那些組成,我們可以設計出完整的任務測試案例,從而保證測試可能最大化的覆蓋到所有的任務邏輯,如果是簡單任務,還可以提出自動化需求,採用機器人自動完成。集成測試階段:集成測試是對整個系統的測試。由於前期測試與開發的並行,集成測試已經基本完成,這時只需要對前期在設計階段中設計的系統測試案例運行一下就可以。我們主要的重心在集成測試中的兼容性測試,由於遊戲測試的特殊性,對兼容性的要求特別高,所以我們採用了外部與內部同部進行的方式,內部我們有自己的平台試驗室,搭建主流的硬軟體測試環境,同時我們還通過一些專業的兼容性測試機構對我們的遊戲軟體做兼容性分析,讓我們的遊戲軟體可以跑在更多的機器上。
遊戲測試——圖片遊戲測試——圖片

經典解析

在團隊中若是有資深的測試人員要具備的一項基本的素質就是可以針對UML的用例圖時序圖狀態圖來設計出重要系統的測試案例,只有重要系統的質量得到充分的測試,遊戲程式的質量才可以得到充分的保證。一個用戶登入遊戲系統的時序圖。從這裡我們可以很明確的了解玩家是如何驗證並登入系統的,在這個過程中要與那些對象進行互動,比如這裡我們就是三個系統之間的互動,客戶端(玩家部分),網關,賬號服務之間的一個時序變化關係,為了能夠完整的對這個流程進行測試,我們必需設計出可以覆蓋整個流程的測試案例,並考慮其中可能的非法情況,因為這個時序圖只是考慮了用戶正常登入成功的情況,並沒有考慮密碼錯誤,通信失敗等許多可能存有的情況,並形成完整的測試案例庫,從而對登入系統的系統化測試做了充分的準備。同時通過這張圖,性能分析人員還可以分析出可能存的性能瓶頸,比如這裡可能有的瓶頸如下,總網關是否可以達到多少用戶的並發,是如果達不到,是否可以採用分散式部署或是支持負載平衡,三者之間的網路頻寬的比例分配,賬號伺服器是否可以承載多個網關的連線請求,最大連線請求可以達到多少等等,同時會針對這些風險做性能測試的設計,並提出自動化測試的需求,比如模擬玩家登入的壓力工具等等。
性能測試與最佳化:最後要單獨提一下的是性能最佳化,在單機版的時代,性能的要求並不是很高,但是在網路版的時代,則是兩個完全不同的概念,主要包含了以下幾個方面:套用在客戶端性能的測試、套用在網路上性能的測試和套用在伺服器端性能的測試。通常情況下,三方面有效、合理的結合,可以達到對系統性能全面的分析和瓶頸的預測。不過在測試過程中有這樣一個原則,就是由於測試是在集成測試完成或接近完成時進行,要求測試的功能點能夠走通,這時你首先要進行最佳化的是資料庫或是網路本身的配製,只有這樣才可以規避改動程式的風險。同時性能的測試與最佳化是一個逐步完善的過程,需要前期的很多的工作,比如性能需求,測試工具等等,不過由於前期工作的完善,這些都在前期完成了。

策劃測試

測試過程不可能在真空中進行。如果測試人員不了解遊戲是由那幾個部分組成的,那么執行測試就非常的困難,同時測試計畫可以明確測試的目標,需要什麼資源,進度的安排,通過測試計畫,既可以讓測試人員了解此次遊戲測試中那些是測試重點,又可以與產品開發小組進行交流。在企業開發中,測試計畫書來源於需求說明文檔,同樣在遊戲開發過程中,測試計畫的來源則是策劃書。
策劃書包含了遊戲定位,風格,故事情節,要求的配製等等。從裡面了解到遊戲的組成,可玩性,平衡(經濟與能力),與形式(單機版還是網路遊戲),而測試在這一階段主要的事情就是通過策劃書來制定詳細的測試計畫,主要分兩個方面一是遊戲程式本身的測試計畫,比如任務系統,聊天,組隊,地圖等等由程式來實現的功能測試計畫,二是遊戲可玩性有測試計畫,比如經濟平衡標準是否達到要求,各個門派技能平衡測試參數與方法,遊戲風格的測試,三是關於性能測試的計畫,比如客戶端的要求,網路版的對伺服器的性能要求。同時測試計畫書中還寫明了基本的測試方法,要設計的自動化工具的需求,為後期的測試打下良好的基礎。同時由於測試人員參與到策劃評審,對遊戲也有很深入的了解,會對策劃提出自己的看法,包含可玩性,用戶群,性能要求等等並形成對產品的風險評估分析報告,但這份報告不同於策劃部門自己的風險分析報告,主要從旁觀者的角度對遊戲本身的品質作充分的論證,從而更有效的對策划起到控制的作用。

遊戲壓力測試

通過機器數據或者藉助公會資源,對遊戲各項數據以及伺服器承受壓力的一種測試,一般為有償性測試,09年遊戲壓力測試一般都在遊戲公司內部進行,09年以後由於遊戲的內容增多,遊戲壓力測試被推到商業化尋找測試夥伴的地位,一般都由公會去操作,也有的委託給遊戲壓力測試網站或者威客網去做,做遊戲壓力測試的網站有豬八戒、中國威客等。

熱門詞條

聯絡我們