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.1k
ヘブンバーンズレッドのアドベンチャーパートに対するテスト手法
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
REALITY株式会社における開発生産性向上の取り組み: 失敗と成功から学んだこと
gree_tech
PRO
2
190
『ヘブンバーンズレッド』におけるフィールドギミックの裏側
gree_tech
PRO
2
150
セキュリティインシデント対応の体制・運用の試行錯誤 / greetechcon2024-session-a1
gree_tech
PRO
1
140
『アナザーエデン 時空を超える猫』国内海外同時運営実現への道のり ~別々で開発されたアプリを安定して同時リリースするまでの取り組み~
gree_tech
PRO
1
120
『アサルトリリィ Last Bullet』におけるクラウドストリーミング技術を用いたブラウザゲーム化の紹介
gree_tech
PRO
1
150
UnityによるPCアプリの新しい選択肢。「PC版 Google Play Games」への対応について
gree_tech
PRO
1
240
実機ビルドのエラーによる検証ブロッカーを0に!『ヘブンバーンズレッド』のスモークテスト自動化の取り組み
gree_tech
PRO
1
180
"ゲームQA業界の技術向上を目指す! 会社を超えた研究会の取り組み"
gree_tech
PRO
1
230
Jamstack でリニューアルするグリーグループのメディア
gree_tech
PRO
2
390
Other Decks in Technology
See All in Technology
AIのコンプラは何故しんどい?
shujisado
1
190
KubeCon NA 2024 Recap: How to Move from Ingress to Gateway API with Minimal Hassle
ysakotch
0
200
Turing × atmaCup #18 - 1st Place Solution
hakubishin3
0
470
宇宙ベンチャーにおける最近の情シス取り組みについて
axelmizu
0
110
小学3年生夏休みの自由研究「夏休みに Copilot で遊んでみた」
taichinakamura
0
140
複雑性の高いオブジェクト編集に向き合う: プラガブルなReactフォーム設計
righttouch
PRO
0
110
10個のフィルタをAXI4-Streamでつなげてみた
marsee101
0
160
LINE Developersプロダクト(LIFF/LINE Login)におけるフロントエンド開発
lycorptech_jp
PRO
0
120
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
150
LINEヤフーのフロントエンド組織・体制の紹介【24年12月】
lycorp_recruit_jp
0
530
サービスでLLMを採用したばっかりに振り回され続けたこの一年のあれやこれや
segavvy
2
360
Wantedly での Datadog 活用事例
bgpat
1
410
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
The Invisible Side of Design
smashingmag
298
50k
Unsuck your backbone
ammeep
669
57k
How to Ace a Technical Interview
jacobian
276
23k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Rails Girls Zürich Keynote
gr2m
94
13k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
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