特定のタイトル専用ではない複数のタイトルをサポートできる自動テストプラットフォームの構築を検討している方。
また、既に複数のタイトルをサポートしているが、開発工数や適用効果について課題を感じている方。
自動テストを単一のタイトルだけでなく、複数のタイトルに適用し、継続して開発・運用していく方法。
耐障害性の高い自動テストプラットフォームを構築・運用していく方法。
FINAL FANTASY VII REMAKEのテスト自動化から始まった自動テストプラットフォームも現在は平均して4タイトルを同時並行にサポートするマルチテナント型自動テストプラットフォームとなりました。
各タイトルには対応プラットフォームや開発形態(内製、外部委託、最終QAは社内で行うハイブリット)、開発基盤などが異なるだけでなく、自動テストに求めるものも大きく異なります。
各タイトルが求める自動テストのシナリオを、自動テストプラットフォームは適切に機材に割り当て、最大限に各タイトルの要望に応えるものである必要があります。
本セッションでは、このようなマルチテナント下で適切なテスト実行を実現するための以下のような基盤技術について解説します。
・タイトルごとの必要なテストを定義し、優先度を動的に決定するテスト・スケジューラー
・頻繁なパッケージ・リリースに対して限られた機材に対し、適切なテストを割り振るスライス・固定パッケージメカニズム
・タイトルごとの開発基盤 (バージョン管理ツール、テストパッケージの格納場所) の違いを吸収するビルド・パッケージ同期メカニズム
・ネットワーク帯域の問題を低減するキャッシュ・メカニズム (ビルド・パッケージ)
・機材の利用効率を最大化する先行ビルド、オンデマンド・パッケージ・インストール
・一つのタイトルの開発基盤やビルド問題、また特定の機材自体の問題で、自動テストプラットフォーム全体を停止させないレジリエント機能
・タイトル固有のデバッグ・メニューに依存しないセーブゲーム・メカニズム
また、導入として、実際のサポートタイトルとして、大きく異なった特徴と開発形態を持つ3つのタイトル、FINAL FANTASY VII REMAKE INTERGRADE、ヴァルキリーエリュシオン、ドラゴンクエストX オフラインについて、デモを交えながら、各タイトルでの自動テストのサポート内容について解説します。