Upload
yuusuke-takeuchi
View
376
Download
4
Embed Size (px)
Citation preview
テスト駆動ゲーム開発をJavaScriptで実践
in JsCafe20
!
竹内 佑介
自己紹介
竹内 佑介
仕事でソフト開発やってます
趣味で通信対戦ゲームを作ってます
さっそくですが
こんなゲーム作ってます
機動倶楽部Gブレイバー
ジャンルは対戦型PRGです
詳細はこちらですhttp://www.slideshare.net/yuusuketakeuchi96/g-33989023
テスト駆動とは?
テスト失敗
テスト成功リファクタリング
Gブレイバーのテスト状況について説明します
サーバ クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
Gブレイバーシステム構成
ゲームロジック
サーバ クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
Gブレイバーシステム構成
ゲームロジック ユニットテストスタブと!半自動テスト
ユニットテスト
今日はゲーム画面テストの話をします
テストコードの構成
クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
テストコードの構成
クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
JSONでダミーを作る
テストコードの構成
クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
送信オブジェクトにアサーションをかける
テストコードの構成
クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
ボタン押下コールバックを直接呼ぶ
テストコードの構成
クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
ここは目視で確認
テストコードの構成
クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
フレーム制御はtimeLineを活用
実際のテストコードはここ
https://github.com/kaidouji85/gbraver/blob/master/publicForTest/javascripts/playerAtackTest.js
timeLineについて
ご清聴ありがとう
ございました
おまけ
スタブについて
Gブレイバーのスタブ
クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
Gブレイバーのスタブ
クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
テストコードを同じものを作る
Gブレイバーのスタブ
クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
テストコードを同じものを作る
一般的なテストコードと書き方は同じ
ー>ここを作るのは楽
Gブレイバーのスタブ
クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
手動で実施
Gブレイバーのスタブ
クライアント
コマンド入力コマンド送信
ゲーム結果送信 ゲーム結果表示
手動で実施
テストコードを作る前にスタブを作ってます
ぶっちゃけ、スタブをテストコードに流用してます
スタブ
スタブ コマンド入力自動
追加
テストコード
スタブ コマンド入力自動