Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ヘブンバーンズレッドのアドベンチャーパートに対するテスト手法
Search
gree_tech
PRO
October 25, 2022
Technology
0
1.4k
ヘブンバーンズレッドのアドベンチャーパートに対するテスト手法
GREE Tech Conference 2022で発表された資料です。
https://techcon.gree.jp/2022/session/TrackB-8
gree_tech
PRO
October 25, 2022
Tweet
Share
More Decks by gree_tech
See All by gree_tech
コミュニケーションに鍵を見いだす、エンジニア1年目の経験談
gree_tech
PRO
0
130
REALITY株式会社における開発生産性向上の取り組み: 失敗と成功から学んだこと
gree_tech
PRO
2
1.7k
『ヘブンバーンズレッド』におけるフィールドギミックの裏側
gree_tech
PRO
2
580
セキュリティインシデント対応の体制・運用の試行錯誤 / greetechcon2024-session-a1
gree_tech
PRO
1
600
『アナザーエデン 時空を超える猫』国内海外同時運営実現への道のり ~別々で開発されたアプリを安定して同時リリースするまでの取り組み~
gree_tech
PRO
1
560
『アサルトリリィ Last Bullet』におけるクラウドストリーミング技術を用いたブラウザゲーム化の紹介
gree_tech
PRO
1
650
UnityによるPCアプリの新しい選択肢。「PC版 Google Play Games」への対応について
gree_tech
PRO
1
1k
実機ビルドのエラーによる検証ブロッカーを0に!『ヘブンバーンズレッド』のスモークテスト自動化の取り組み
gree_tech
PRO
1
670
"ゲームQA業界の技術向上を目指す! 会社を超えた研究会の取り組み"
gree_tech
PRO
1
790
Other Decks in Technology
See All in Technology
「Chatwork」のEKS環境を支えるhelmfileを使用したマニフェスト管理術
hanayo04
1
420
PHPでResult型やってみよう
higaki_program
0
110
アクセスピークを制するオートスケール再設計: 障害を乗り越えKEDAで実現したリソース管理の最適化
myamashii
1
740
AI時代にも変わらぬ価値を発揮したい: インフラ・クラウドを切り口にユーザー価値と非機能要件に向き合ってエンジニアとしての地力を培う
netmarkjp
0
160
ClaudeCodeにキレない技術
gtnao
1
900
ゼロから始めるSREの事業貢献 - 生成AI時代のSRE成長戦略と実践 / Starting SRE from Day One
shinyorke
PRO
0
160
Figma Dev Mode MCP Serverを用いたUI開発
zoothezoo
0
260
AWS Well-Architected から考えるオブザーバビリティの勘所 / Considering the Essentials of Observability from AWS Well-Architected
sms_tech
1
620
Building GoReleaser - from shell script to paid product
caarlos0
0
170
エンジニアリングマネージャー“お悩み相談”パネルセッション
ar_tama
1
310
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
13k
毎晩の 負荷試験自動実行による効果
recruitengineers
PRO
5
190
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Code Reviewing Like a Champion
maltzj
524
40k
Rails Girls Zürich Keynote
gr2m
95
14k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Gamification - CAS2011
davidbonilla
81
5.4k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Testing 201, or: Great Expectations
jmmastey
43
7.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
GitHub's CSS Performance
jonrohan
1031
460k
Transcript
グリー株式会社 QAエンジニア 勅使川原 大輔 ヘブンバーンズレッドの アドベンチャーパートに対するテス ト手法 グリー株式会社 QAマネージャー 野本 雅俊
登壇者紹介 2 氏名と所属 野本 雅俊 (のもと まさとし) Customer & Product Satisfaction部 WFQAチーム マネージャー 略歴
2012年グリーに入社。GREE PFのQA担当後、 NativeゲームのQAへ異動。2018年からマネー ジャーとなる。 主な業務内容 WFSタイトル全般のQA統括 各メンバーのマネジメント 氏名と所属 勅使川原 大輔 (てしがわら だいすけ) Customer & Product Satisfaction部 WFQAチーム 略歴 2016年グリーに入社。移管タイトルのQAやリ スク対応推進担当などを経て、ヘブンバーン ズレッドのβ開発からQAを担当。 主な業務内容 ヘブンバーンズレッドのQAチームリーダー
3 1. 本タイトルにおける品質状況 a. ヘブンバーンズレッドとは 2. アドベンチャーパートのテスト a. 探索的テスト b.
フラグ分岐の網羅 3. まとめ
・新規リリースから1ヶ月程度は障害数が多くなりがち ・だが、本タイトルでは障害数が抑制できていた 4 タイトルA タイトルB 本タイトル 90件 99件 25件 本タイトルにおける品質状況
リリース直後の障害数について リリース後1ヶ月障害数比較(大小含めた件数) 本タイトルのQAにおける独自の取り組みが障害抑制の一因となった
ヘブンバーンズレッドとは 5 フィールド バトル アドベンチャー
ヘブンバーンズレッドとは 6 フィールド バトル アドベンチャー
QAの取り組み例 アドベンチャーパートのテスト • 全テストケースのレビューとフロー構築 • スキルの組み合わせ網羅とテストデータ作成 • アドベンチャーパートのテスト • 探索的テスト
• フラグ分岐の網羅 • ※VISUAL ARTS/Keyによる全分岐の網羅的な監修 7
8 前提課題 アドベンチャーパートのテスト ゲームのメイン部分を占めボリュームが大きく 品質を担保すべき優先度も高い なんかADVのスクショ
9 前提課題 アドベンチャーパートのテスト 選択肢による分岐
10 前提課題 アドベンチャーパートのテスト 複雑なフラグ管理 過去の選択肢が影響して分岐する
11 前提課題 アドベンチャーパートのテスト それらを網羅した様な仕様書は無かった 絶望的なイラスト
12 前提課題 アドベンチャーパートのテスト テキスト量が膨大 フラグ管理が複雑 網羅した仕様書が無い 膨大な工数がかかる カバレッジを担保することが難しい テストケース作成が困難
13 アドベンチャーパートのテスト テスト目的などを含むテストチャータを使用する 詳細な手順や確認項目を記載せずテスト実行時に 手順や新たな観点を発見していく 探索的テスト "探索的テストは、仕様がほとんどなかったり、不十分であったり、テストのスケジュールに余 裕がなかったりする場合に最も効果が大きい。他の形式的なテスト技法を補完する場合にも 効果が大きい。" JSTQB
Foundation Level シラバス より
14 アドベンチャーパートのテスト 各シーンで確認すべきテスト目的の粒度で記載 探索的テスト シーン 対象 目的 ADV テキスト 誤字脱字、話者名の相違などがないか
ADV 演出 表示崩れやNG演出がないか ADV ボイス テキストとの相違や音量の不備がないか ADV 背景 状況に合った背景か テストチャータの例
15 探索的テスト アドベンチャーパートのテスト メインストーリーは ゲーム内の時間単位で 区切ってテストを行った
16 アドベンチャーパートのテスト テンプレートを作成し 全ての章、Day、時間帯に分割してテストする 探索的テスト
17 アドベンチャーパートのテスト テスト設計にかかる工数を削減し 全てのストーリーをテストしたことが担保できた 探索的テスト だがフラグ分岐の網羅はできていない
18 フラグ分岐の網羅 アドベンチャーパートのテスト Luaスクリプトの例 見せる用のLua ※実際のスクリプトとは異なります
19 フラグ分岐の網羅 アドベンチャーパートのテスト Luaスクリプトの例 見せる用のLua ※実際のスクリプトとは異なります
20 フラグ分岐の網羅 アドベンチャーパートのテスト Luaスクリプトの例 見せる用のLua ※実際のスクリプトとは異なります
21 フラグ分岐の網羅 アドベンチャーパートのテスト 全Luaからフラグをセット/参照している場所を抜き出して網羅 Luaファイル フラグのセット/参照 一章/Day01/午前01 SetFlag(“1章Day1でてへぺりんこした”) 一章/Day10/夕方 GetFlag(“1章Day1でてへぺりんこした”)
一章/Day03/昼 GetFlag(“ハンバーグカレー食べた ”) 一章/Day03/昼 GetFlag(“カルボナーラ食べた ”) フラグの例
Luaから分岐のある箇所を 確認し全ての分岐に対して フラグを立てられること 回収できることを確認 22 フラグ分岐の網羅 アドベンチャーパートのテスト フラグ分岐のテストケース
フラグ分岐を網羅した上で 各分岐を探索的テストできる ようにしたテンプレート 23 フラグ分岐の網羅 アドベンチャーパートのテスト
24 結果 アドベンチャーパートのテスト 品質 工数 テスト作成工数削減 リリース1ヶ月の障害数25件 アドベンチャーの進行不能なし 工数と品質に大きな効果が出せた
25 結果 アドベンチャーパートのテスト 一定の結果は出せているがまだ障害は減らせるはず 品質を高めるため、さらなる改善に取り組んでいく
26 まとめ ・仕様書が不足している場合は実装を基にしたテストを検討する ・実装を読み取りプランナーやエンジニアと対等に話せる技術知見が必要 ・QA技術を用いて必要なテストを導くことで品質を高めることができる ・品質を高めるためには積極的な『攻めのQA』を意識する 今後、これらの取り組みをQA全体で共有し より技術力を高めてグリーグループ全体の品質向上に繋げていく
27 ご清聴ありがとうございました
28