テスト駆動ゲーム開発をjava scriptで実践 in jscafe20

Post on 31-May-2015

376 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

テスト駆動ゲーム開発を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

画面半自動テストのデモ

https://www.youtube.com/watch?v=NmaJuNIGKw4

Gブレイバーのコード

https://github.com/kaidouji85/gbraver

中の人のブログ

毎日プログラム

http://blog.livedoor.jp/kaidouji85/

timeLineについて

ご清聴ありがとう

ございました

おまけ

スタブについて

Gブレイバーのスタブ

クライアント

コマンド入力コマンド送信

ゲーム結果送信 ゲーム結果表示

Gブレイバーのスタブ

クライアント

コマンド入力コマンド送信

ゲーム結果送信 ゲーム結果表示

テストコードを同じものを作る

Gブレイバーのスタブ

クライアント

コマンド入力コマンド送信

ゲーム結果送信 ゲーム結果表示

テストコードを同じものを作る

一般的なテストコードと書き方は同じ

ー>ここを作るのは楽

Gブレイバーのスタブ

クライアント

コマンド入力コマンド送信

ゲーム結果送信 ゲーム結果表示

手動で実施

Gブレイバーのスタブ

クライアント

コマンド入力コマンド送信

ゲーム結果送信 ゲーム結果表示

手動で実施

テストコードを作る前にスタブを作ってます

ぶっちゃけ、スタブをテストコードに流用してます

スタブ

スタブ コマンド入力自動

追加

テストコード

スタブ コマンド入力自動

top related