對於遊戲測試來說,SDK是開啟遊戲後彈出的登入視窗、是遊戲設定中的切換帳號、是進行充值時調起的支付視窗、是後臺檢視打點資料時的傳入介面,本文將結合遊戲對SDK及相關功能測試進行介紹。
1. 什麼叫SDK?
廣義上來說SDK全稱Software Development Kit,軟體開發工具包。一般都是一些軟體工程師為特定的軟體包、軟體框架、硬體平臺、作業系統等建立應用軟體時的開發工具的集合,它可以簡單的為某個程式設計語言提供應用程式介面API的一些檔案,但也可以包括能與某種嵌入式系統通訊的複雜硬體。一般包括用於除錯和其他用途的實用工具。SDK還經常包括示例程式碼、支援性的技術註解或者其他為基本參考資料澄清疑點的支援文件。
2. 遊戲測試與渠道SDK2.1 遊戲內的SDK
那麼遊戲測試該如何理解SDK,以及在測試過程中該如何對渠道SDK進行測試呢?下面我會進行一個詳細的說明。
圖1. 帳號登入
帳號登入,在不同的遊戲上有不同的顯示,例如騰訊遊戲的QQ登入方式、微信登入方式;網易遊戲的郵箱登入方式、帳號登入方式;海外遊戲的Google登入方式、Facebook登入方式等等,都是透過點選介面上的登入方式,然後調起SDK的登入視窗,才可以進行帳號密碼的輸入,最終進入遊戲,下面是一些不同渠道的SDK登入顯示。
圖2. 不同渠道的SDK登入顯示
那麼既然不同渠道的SDK大不相同,不同渠道的SDK在測試時也要分別進行測試,以保證遊戲功能內容的完整性,不過各渠道間也是基於同一個母包接入的不同SDK,按理來說除SDK外,其他功能應該沒什麼差別,所以在進行測試時只進行功能上的冒煙測試,減少無謂的工作,不用浪費寶貴的時間~
2.2 SDK測試點
SDK的測試,其實對於每家公司來說都是不相同的,基於自己公司的SDK當然要放在測試的首位,需要將SDK內整合的所有功能進行全量測試,包括登入、登出、切換帳號、忘記密碼、遊客登入、防沉迷相關、實名相關、未成年相關、註冊相關等全部進行測試;對於其他渠道包的渠道SDK而言呢,在首次接入時也需要將上述全部功能進行測試,而在後續的版本升級維護中,渠道SDK的功能變更在渠道方會有對應的人員來進行測試,我方則需要著重對付費及各種登入方式進行關注,其他一些防沉迷、實名等在有需求變更時也需要進行測試來達到二次保障。
2.3 SDK支付
付費對於一款遊戲來說是重中之重,所以在此我單獨將這一塊分開來說,一款遊戲是否成功、能否盈利從遊戲付費上面就可以體現,那麼付費和SDK之間又有什麼聯絡呢?在遊戲中進行支付時,點選購買遊戲中的商品,根據SDK的不同,調起的支付頁面也是不同的。
圖3. 不同渠道的SDK支付頁面
2.4 SDK介面測試
效能測試:保證SDK介面滿足特定的效能需求,比如資源佔用、移動裝置耗電量等。登入時可能收到大量同步資料包和離線訊息包,那麼對這些資料包的解析以及本地儲存的效能就要進行保證,否則可能出現登入響應很慢甚至卡住的問題,所以測試時就需要考慮這個場景的效能。
相容性測試:保證SDK相容特定的裝置平臺,並與其他軟體相容。包括橫屏遊戲、豎屏遊戲、各種異形屏的手機及各種安卓、IOS版本號能否正常使用。SDK相容性測試需要考慮下對模擬器的支援,因為很多開發者可能就是先在模擬器上開發。客戶端SDK覆蓋多平臺裝置的,還要考慮多端訊息資料包的互通。
網路相關測試:保證在各種不同的網路環境下,SDK可以正常的接發訊息,也可以叫做弱網測試,類似在2G、3G、4G、wifi、無網環境下進行SDK的相關功能,保證功能可以正常使用,可以與市面上的競品遊戲進行對比,檢視效果。
2.5 資料埋點
對於一款遊戲來說,有成千上萬甚至數百萬的玩家,那麼怎麼來計算他們的充值方式及充值金額呢?這裡就需要用到SDK的介面,本來支付就是集成於SDK內的一個功能,那麼透過他的介面來進行統計肯定是最方便不過的啦~
在測試上,需要注意的點就是要保證資料的準確性,例如充值的平臺、金額、時間、訂單數、是否使用了優惠卷等等,要保證這些資料可以準確的被後臺接收,如果在這方面出現了問題,那可是很嚴重的哦,所以一定要保證仔細,不能馬虎!
3. 總結
總之,手遊與SDK的關係是密不可分的,在測試中也是一樣,SDK的測試屬於重中之重,如果這方面出了問題會影響到使用者的登入及付費,所造成的影響是無法承受的,而且在每次版本更新時,SDK幾乎都會進行升級迭代,更可能導致出現各種各樣的問題,這個時候最需要測試同學仔細檢查,以防出現問題影響到線上玩家。