SlideShare a Scribd company logo
テキスト
Unityにおけるテストパターン
束田 大介
Unityにおけるテスト
Unity Test Tools
Unity Technologiesから
公開されているテスト
ツール
2013年に公開された
が、実際の導入はまだ
浸透してない
搭載されている機能
Unit Test - メソッド単位での挙動の確認
Integration Test - アプリの挙動テスト
Unit Test
準備するもの
Unity Test Tool ( Asset Storeからインポート )
被単体用テストクラス
テスト用コード
Unity Test Tool
AssetStore
AssetStoreで最新のリリース版が配布されているの
で、ダウンロード後インポート
BitBucket
Unity Technologiesからリポジトリが公開されていま
すので、ここから最新版を取得してもよい
被単体テスト用クラス
被単体用テストクラス
実装されているのは、初
期化用の構造体とbool、
intの返り値をもったメ
ソッドLessThanXと
XPlusY。
それぞれのメソッドを、
2つのケースでテストし
ます
テスト用コード
準備
テスト用コードの配置場所
UnityEditorとして機能させるので、必ずEditorフォル
ダに入れておく
Editorとして扱うが、namespaceのUnityEditorの宣言
は不要
属性付与
テスト用コードには、クラス、各メソッドに属性を
付与します
引数に付与する属性もあります
属性付与
[Test]
テスト用メソッドであることを示します。
[TestCase]
InitializeTestでテストする値を渡します。テストケースの数だけ属性
を記述します。
[Values]
引数に与える値を並べて指定することができます。
[Range]
引数に与える値を範囲と条件を指定することができます。
テスト用コード
被テスト用クラスと同
じだけのテスト用メソッ
ドを準備します
引数の値に応じてテス
トを行うよう設定する
テスト用コード
テスト用コード
InitializeTestメソッドに、整数1と2を渡した場合と、−1と
−100を渡した場合にエラーがないかのテストになります
仮にTestClassのx,yがfloatだった場合、エラーが返ってきま
す
テスト用コード
こちらのテストメソッドは、それぞれの引数に、Valuesにセット
した値を渡し、すべての条件分のテストを行います
テストないの条件値、TestClassを呼び出した結果にエラーがなけ
ればこのテストはOKといった結果になります(
Assert.AreEqual(xLess, testClass.LessThanX(a)); )
テスト用コード
この場合は少々複雑で、1∼10のレンジで2つおきの値を引数とし
た条件と、1∼2のレンジでカウントした値のすべての条件でテスト
を行います
xとyにそれぞれ値が入っていて計算ができ、かつtestClass.XPlusYTest
から値が返ってきているかの条件を満たした場合OKとします
実行方法
事例としてはJenkinsから、Unityのバッチモードで実
行させる事を想定していました
定期的、もしくはリポジトリにコミットがあった場
合にバッチモードでテストを実行を想定
今回は基本的な実行方法をご紹介します
実行方法
Unity5でのウインドウになってし
まっていますが、RunAllを押すと、
すべてのテストが開始されます
UnityTestでエラーが出ていますが割
愛します
MyTestの結果を見るとすべての値が
成功していますが、かかった時間も
ウインドウ下部に表示されています
実行方法
テスト結果に関しては、Xmlにて出力することも可能
以下のコードはWindows用ですが、アプリケーションの
指定、保存先のファイルパスを変更する形で実行可能
Jenkinsで呼び出すことも可能
>Unity.exe -batchmode
-projectPath PATH_TO_YOUR_PROJECT
-executeMethod UnityTest.Batch.RunUnitTests
-resultFilePath=C:tempresults.xml
ご静聴ありがとうございました

More Related Content

PDF
テストを書こう、Unity編
PDF
SPAJAMでやったこと
PDF
Pythonでブラウザをいっぱい動かしたい
PPT
Python Autotest pdc2008w
PDF
書こう! 使おう! 単体テスト
PPT
Test Plugins
PDF
【Unite Tokyo 2018 Training Day】C#JobSystem & ECSでCPUを極限まで使い倒そう ~Entity Compon...
PDF
書こう! 使おう! 単体テスト
テストを書こう、Unity編
SPAJAMでやったこと
Pythonでブラウザをいっぱい動かしたい
Python Autotest pdc2008w
書こう! 使おう! 単体テスト
Test Plugins
【Unite Tokyo 2018 Training Day】C#JobSystem & ECSでCPUを極限まで使い倒そう ~Entity Compon...
書こう! 使おう! 単体テスト

What's hot (19)

PDF
Pythonでの開発を効率的に進めるためのツール設定
PPTX
開発環境構築からはじめるPython VisualStudio Codeとpipenvで始めるpython
KEY
GroovyなAndroidテスト #atest_hack
PPTX
QtでHello, World!!
PDF
Getting Started with Testing using PHPUnit
PDF
ExcelとPythonによる社会インフラシステムの設定ファイルの自動生成
PDF
オープンCAEとPython
PDF
Eclipseデバッガを活用するための31のtips
PDF
Using PyFoam as library(第25回オープンCAE勉強会@関西)
PDF
ゼロから始めたE2Eテスト
PDF
OpenMDAOをUbuntu12.04にインストールする(第24回オープンCAE勉強会@関西)
PDF
xUnit Test Patterns - Chapter11
PDF
wxPython入門(大阪Pythonユーザの集まり2014/03)
PDF
密着!わたしのコンソールアプリ開発環境
PDF
OpenMDAOの最適化を試す(第23回オープンCAE勉強会@関西)
PPTX
各OSにおいて、OpenCVをpythonから使う方法
ODP
PySide/QtWebkitで楽々 slideshare Hack
PDF
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
PDF
Pythonでゲーム作る
Pythonでの開発を効率的に進めるためのツール設定
開発環境構築からはじめるPython VisualStudio Codeとpipenvで始めるpython
GroovyなAndroidテスト #atest_hack
QtでHello, World!!
Getting Started with Testing using PHPUnit
ExcelとPythonによる社会インフラシステムの設定ファイルの自動生成
オープンCAEとPython
Eclipseデバッガを活用するための31のtips
Using PyFoam as library(第25回オープンCAE勉強会@関西)
ゼロから始めたE2Eテスト
OpenMDAOをUbuntu12.04にインストールする(第24回オープンCAE勉強会@関西)
xUnit Test Patterns - Chapter11
wxPython入門(大阪Pythonユーザの集まり2014/03)
密着!わたしのコンソールアプリ開発環境
OpenMDAOの最適化を試す(第23回オープンCAE勉強会@関西)
各OSにおいて、OpenCVをpythonから使う方法
PySide/QtWebkitで楽々 slideshare Hack
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
Pythonでゲーム作る
Ad

Viewers also liked (20)

PDF
テストがあればなんとかなる〜効率化までの道程〜
PDF
テストの種類とBDD #33testing
PPTX
Robotium を使った UI テストとレイアウト確認の効率化
PDF
User Scenario based UI testing with KIF
PPTX
Sansan における Android アプリ自動テスト導入事例
PPTX
Appium を使って iOS / Android の UI テストを共通化
PDF
【Unite2014】Unity Test Tools
PDF
『Incubate Camp 5th』のご案内
PDF
スマートフォンアプリ開発と自動化 〜なじむ。実に!なじむぞ!〜 #AsianAA
PDF
【Unite2014】Unity5.0 アセットパイプライン/アセットバンドル
PDF
Androidで使えるモックフレームワーク
PDF
javascript を Xcode でテスト
PDF
iOSアプリ開発の現場で訊いてきたtips
PPTX
Robotium を使った UI テスト
PDF
ハンドメイドカレンダー第15回potatotips用
PPTX
Jenkins + Deploygateを使った簡単ベータ配信
PDF
App extension for iOS
PPTX
BITRISEを使っています
PPTX
iOSにおけるUIテスト@potetotips
PDF
Xcode 7におけるUIテストとカバレジ計測 #yidev 第20回勉強会
テストがあればなんとかなる〜効率化までの道程〜
テストの種類とBDD #33testing
Robotium を使った UI テストとレイアウト確認の効率化
User Scenario based UI testing with KIF
Sansan における Android アプリ自動テスト導入事例
Appium を使って iOS / Android の UI テストを共通化
【Unite2014】Unity Test Tools
『Incubate Camp 5th』のご案内
スマートフォンアプリ開発と自動化 〜なじむ。実に!なじむぞ!〜 #AsianAA
【Unite2014】Unity5.0 アセットパイプライン/アセットバンドル
Androidで使えるモックフレームワーク
javascript を Xcode でテスト
iOSアプリ開発の現場で訊いてきたtips
Robotium を使った UI テスト
ハンドメイドカレンダー第15回potatotips用
Jenkins + Deploygateを使った簡単ベータ配信
App extension for iOS
BITRISEを使っています
iOSにおけるUIテスト@potetotips
Xcode 7におけるUIテストとカバレジ計測 #yidev 第20回勉強会
Ad

Similar to Unity testtool (20)

PDF
Androidテスティング実践3 ユニットテスト・CI編
PDF
20170625 JXUG Fukuoka 発表資料 : Unit / UI Testing - Xamarin
PPTX
【Unity道場教育スペシャル】Unity認定プログラマー試験の試験範囲と試験対策方法について
KEY
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
PDF
【Unite Tokyo 2019】Unity Test Runnerを活用して内部品質を向上しよう
PDF
Agileツール適合化分科会(テスト自動化ツール)
PDF
Spring bootでweb ユニットテスト編
PDF
モックライブラリを使ってきちんとユニットテストする #Objective-C
PDF
機械学習を活用したテスト自動化システムの設計
PDF
そうだプラグイン作ろう =Unityの巻=
PDF
【Unite 2018 Tokyo】エディター拡張マニアクス2018
PPT
ユニットテスト_2日目
PDF
UnityによるHoloLensアプリケーション入門
PPT
PHP agile test tips
PPTX
ソフトウェア・テスト入門8
PDF
勉強会8月26日.pdf
PDF
2015 12 03_uiテストツールについて
PPTX
CLRH_120414_WFTDD
PDF
20161222 selenium adventcalender
Androidテスティング実践3 ユニットテスト・CI編
20170625 JXUG Fukuoka 発表資料 : Unit / UI Testing - Xamarin
【Unity道場教育スペシャル】Unity認定プログラマー試験の試験範囲と試験対策方法について
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
【Unite Tokyo 2019】Unity Test Runnerを活用して内部品質を向上しよう
Agileツール適合化分科会(テスト自動化ツール)
Spring bootでweb ユニットテスト編
モックライブラリを使ってきちんとユニットテストする #Objective-C
機械学習を活用したテスト自動化システムの設計
そうだプラグイン作ろう =Unityの巻=
【Unite 2018 Tokyo】エディター拡張マニアクス2018
ユニットテスト_2日目
UnityによるHoloLensアプリケーション入門
PHP agile test tips
ソフトウェア・テスト入門8
勉強会8月26日.pdf
2015 12 03_uiテストツールについて
CLRH_120414_WFTDD
20161222 selenium adventcalender

More from 大介 束田 (8)

PDF
第1回GameDesign-遊びの体験と文化
PDF
WWDC 2015 情報共有会
PDF
ゲーム開発におけるバックトラック法
PDF
20141218 お・と・なのlt大会
PDF
iOS 8/Swift エンジニア勉強会@ヤフー
PDF
メンボフェスタ
PDF
20130119 さいたま勉強会
PDF
20130427 さいたま勉強会
第1回GameDesign-遊びの体験と文化
WWDC 2015 情報共有会
ゲーム開発におけるバックトラック法
20141218 お・と・なのlt大会
iOS 8/Swift エンジニア勉強会@ヤフー
メンボフェスタ
20130119 さいたま勉強会
20130427 さいたま勉強会

Unity testtool