【Unity】検証用にテストメソッドを書いてみたが、Findの結果がNullになってしまう。
下記サイトを参考にテストメソッドを書いてみたのですが、Findの結果がどうしてもNullになってしまった。(特に解決してないし、原因もわかってない)
やったこと
今回、”Buttonを押した時”に動作するようなメソッドを追加したのですが、その挙動を確認するためにテストメソッドを書きました。
実装した内容
呼び出される側
private GameObject FindModelObject(string name) { return GameObject.Find(name); }
呼び出す側
[Test] public void CheckModelObject() { Debug.Log(FindModelObject("xxxxx")); }
やっていることは簡単で、FindModelObject に探したいオブジェクトの名前を引数にわたすと、そのオブジェクトを返してくれます。そのメソッドをテストメソッド内で呼び出して表示しようとしています。実装したテストはUnityの Test Runner の PlayModeで動かしています。
問題になったこと
テストを実行すると、コンソールに Null と表示される(実際はオブジェクトの情報が表示されてほしい)。オブジェクト自体はActiveなので取れるはず。
原因
不明
対策内容
しょうがないので、Start関数内でDebg.Logを使用して表示させたけど(これはできる)、テストになってない、、、
感想
とりあえずちょっとハマったので、自分用にメモ