Unity 테스트 코드 정보
Unity 프로젝트 만들기
테스트 개발을 위해 Unity 프로젝트를 새로 만듭니다.
Unity Test Ruuner 활용
Unity의 표준으로 탑재된 테스트 툴입니다.
Unity 메뉴 화면에서 Window>General>Test Runner에서 열 수 있습니다.
테스트 방법에는 두 가지 방법이 있습니다.
Play 모드: 실제로 백그라운드에서 앱을 실행하면서 테스트합니다.
Edit 모드: 별도로 Edit 모드용 파일을 추가하여 테스트할 수 있습니다. 테스트시의 앱 기동은 하지 않습니다.
테스트할 파일 만들기
테스트할 파일을 준비합니다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SoundManager : MonoBehaviour
{
public static SoundManager instance;
private void Awake()
{
if(instance == null)
{
instance = this;
DontDestroyOnLoad(this.gameObject);
}
else
{
Destroy(this.gameObject);
}
}
//--シングルトン終わり--
public AudioSource audioSourceBGM; //BGMのスピーカー
public AudioClip[] audioClipsBGM; //BGMの素材 (0:Title, 1:Town, 2:Quest, 3:Battle)
public AudioSource audioSourceSE; //SEのスピーカー
public AudioClip[] audioClipsSE; //ならす素材
private string v;
public SoundManager(string v)
{
this.v = v;
}
public void StopBGM()
{
audioSourceBGM.Stop();
}
public void StopSE()
{
audioSourceSE.Stop();
}
// Start is called before the first frame update
void Start()
{
PlayBGM("Title");
}
public void PlayBGM(string sceneName)
{
audioSourceBGM.Stop();
switch (sceneName)
{
default:
case "Title":
audioSourceBGM.clip = audioClipsBGM[0];
break;
case "Town":
audioSourceBGM.clip = audioClipsBGM[1];
break;
case "Quest":
audioSourceBGM.clip = audioClipsBGM[2];
break;
case "Battle":
audioSourceBGM.clip = audioClipsBGM[3];
break;
}
audioSourceBGM.Play();
}
public void PlaySE(int index)
{
audioSourceSE.PlayOneShot(audioClipsSE[index]); //SEを一度鳴らす
this.count = 0;
}
public int count { get; private set; }
public int GetName() { return this.count; }
}
백그라운드 BGM의 설정이나 버튼 클릭시에 소리가 울리는 설정을 하고 있습니다.
버튼이 울릴 때 PlaySE가 기동됩니다만, 그 때 카운트에 0을 대입하도록 하고 있습니다.
테스트 코드 작성
테스트하는 코드를 작성합니다.
TestRunner 화면에서 Tests 폴더를 만들어 테스트 파일을 만듭니다.
using System.Collections;
using System.Collections.Generic;
using NUnit.Framework;
using UnityEngine;
using UnityEngine.TestTools;
namespace Tests
{
public class NewTestScript
{
// A UnityTest behaves like a coroutine in Play Mode. In Edit Mode you can use
// `yield return null;` to skip a frame.
[UnityTest]
public IEnumerator SoundManagerTest()
{
var x = new SoundManager("count");
//start()
Assert.AreEqual(0,x.GetName());
yield return null;
}
}
}
count의 값과 예측값을 비교해 맞으면 테스트가 통과하도록 하고 있습니다.
테스트
테스트 코드를 작성한 후 테스트합니다.
이번에는 Play 모드로 실행하고 있습니다.
왼쪽 상단의 Run All에서 테스트를 실행합니다.
결과가 정확하면 모든 녹색 체크가 붙습니다.
요약
Unity에서 테스트 개발을 위한 절차를 작성했습니다.
Play 모드와 Edit 모드를 선택할 수 있으므로 필요에 따라 구분하십시오.
테스트할 파일을 준비하고 테스트 코드를 준비해야 합니다.
Reference
이 문제에 관하여(Unity 테스트 코드 정보), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Riahz/items/d5c11a03512e741365aa
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Unity의 표준으로 탑재된 테스트 툴입니다.
Unity 메뉴 화면에서 Window>General>Test Runner에서 열 수 있습니다.
테스트 방법에는 두 가지 방법이 있습니다.
Play 모드: 실제로 백그라운드에서 앱을 실행하면서 테스트합니다.
Edit 모드: 별도로 Edit 모드용 파일을 추가하여 테스트할 수 있습니다. 테스트시의 앱 기동은 하지 않습니다.
테스트할 파일 만들기
테스트할 파일을 준비합니다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SoundManager : MonoBehaviour
{
public static SoundManager instance;
private void Awake()
{
if(instance == null)
{
instance = this;
DontDestroyOnLoad(this.gameObject);
}
else
{
Destroy(this.gameObject);
}
}
//--シングルトン終わり--
public AudioSource audioSourceBGM; //BGMのスピーカー
public AudioClip[] audioClipsBGM; //BGMの素材 (0:Title, 1:Town, 2:Quest, 3:Battle)
public AudioSource audioSourceSE; //SEのスピーカー
public AudioClip[] audioClipsSE; //ならす素材
private string v;
public SoundManager(string v)
{
this.v = v;
}
public void StopBGM()
{
audioSourceBGM.Stop();
}
public void StopSE()
{
audioSourceSE.Stop();
}
// Start is called before the first frame update
void Start()
{
PlayBGM("Title");
}
public void PlayBGM(string sceneName)
{
audioSourceBGM.Stop();
switch (sceneName)
{
default:
case "Title":
audioSourceBGM.clip = audioClipsBGM[0];
break;
case "Town":
audioSourceBGM.clip = audioClipsBGM[1];
break;
case "Quest":
audioSourceBGM.clip = audioClipsBGM[2];
break;
case "Battle":
audioSourceBGM.clip = audioClipsBGM[3];
break;
}
audioSourceBGM.Play();
}
public void PlaySE(int index)
{
audioSourceSE.PlayOneShot(audioClipsSE[index]); //SEを一度鳴らす
this.count = 0;
}
public int count { get; private set; }
public int GetName() { return this.count; }
}
백그라운드 BGM의 설정이나 버튼 클릭시에 소리가 울리는 설정을 하고 있습니다.
버튼이 울릴 때 PlaySE가 기동됩니다만, 그 때 카운트에 0을 대입하도록 하고 있습니다.
테스트 코드 작성
테스트하는 코드를 작성합니다.
TestRunner 화면에서 Tests 폴더를 만들어 테스트 파일을 만듭니다.
using System.Collections;
using System.Collections.Generic;
using NUnit.Framework;
using UnityEngine;
using UnityEngine.TestTools;
namespace Tests
{
public class NewTestScript
{
// A UnityTest behaves like a coroutine in Play Mode. In Edit Mode you can use
// `yield return null;` to skip a frame.
[UnityTest]
public IEnumerator SoundManagerTest()
{
var x = new SoundManager("count");
//start()
Assert.AreEqual(0,x.GetName());
yield return null;
}
}
}
count의 값과 예측값을 비교해 맞으면 테스트가 통과하도록 하고 있습니다.
테스트
테스트 코드를 작성한 후 테스트합니다.
이번에는 Play 모드로 실행하고 있습니다.
왼쪽 상단의 Run All에서 테스트를 실행합니다.
결과가 정확하면 모든 녹색 체크가 붙습니다.
요약
Unity에서 테스트 개발을 위한 절차를 작성했습니다.
Play 모드와 Edit 모드를 선택할 수 있으므로 필요에 따라 구분하십시오.
테스트할 파일을 준비하고 테스트 코드를 준비해야 합니다.
Reference
이 문제에 관하여(Unity 테스트 코드 정보), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Riahz/items/d5c11a03512e741365aa
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SoundManager : MonoBehaviour
{
public static SoundManager instance;
private void Awake()
{
if(instance == null)
{
instance = this;
DontDestroyOnLoad(this.gameObject);
}
else
{
Destroy(this.gameObject);
}
}
//--シングルトン終わり--
public AudioSource audioSourceBGM; //BGMのスピーカー
public AudioClip[] audioClipsBGM; //BGMの素材 (0:Title, 1:Town, 2:Quest, 3:Battle)
public AudioSource audioSourceSE; //SEのスピーカー
public AudioClip[] audioClipsSE; //ならす素材
private string v;
public SoundManager(string v)
{
this.v = v;
}
public void StopBGM()
{
audioSourceBGM.Stop();
}
public void StopSE()
{
audioSourceSE.Stop();
}
// Start is called before the first frame update
void Start()
{
PlayBGM("Title");
}
public void PlayBGM(string sceneName)
{
audioSourceBGM.Stop();
switch (sceneName)
{
default:
case "Title":
audioSourceBGM.clip = audioClipsBGM[0];
break;
case "Town":
audioSourceBGM.clip = audioClipsBGM[1];
break;
case "Quest":
audioSourceBGM.clip = audioClipsBGM[2];
break;
case "Battle":
audioSourceBGM.clip = audioClipsBGM[3];
break;
}
audioSourceBGM.Play();
}
public void PlaySE(int index)
{
audioSourceSE.PlayOneShot(audioClipsSE[index]); //SEを一度鳴らす
this.count = 0;
}
public int count { get; private set; }
public int GetName() { return this.count; }
}
테스트하는 코드를 작성합니다.
TestRunner 화면에서 Tests 폴더를 만들어 테스트 파일을 만듭니다.
using System.Collections;
using System.Collections.Generic;
using NUnit.Framework;
using UnityEngine;
using UnityEngine.TestTools;
namespace Tests
{
public class NewTestScript
{
// A UnityTest behaves like a coroutine in Play Mode. In Edit Mode you can use
// `yield return null;` to skip a frame.
[UnityTest]
public IEnumerator SoundManagerTest()
{
var x = new SoundManager("count");
//start()
Assert.AreEqual(0,x.GetName());
yield return null;
}
}
}
count의 값과 예측값을 비교해 맞으면 테스트가 통과하도록 하고 있습니다.
테스트
테스트 코드를 작성한 후 테스트합니다.
이번에는 Play 모드로 실행하고 있습니다.
왼쪽 상단의 Run All에서 테스트를 실행합니다.
결과가 정확하면 모든 녹색 체크가 붙습니다.
요약
Unity에서 테스트 개발을 위한 절차를 작성했습니다.
Play 모드와 Edit 모드를 선택할 수 있으므로 필요에 따라 구분하십시오.
테스트할 파일을 준비하고 테스트 코드를 준비해야 합니다.
Reference
이 문제에 관하여(Unity 테스트 코드 정보), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Riahz/items/d5c11a03512e741365aa
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Unity에서 테스트 개발을 위한 절차를 작성했습니다.
Play 모드와 Edit 모드를 선택할 수 있으므로 필요에 따라 구분하십시오.
테스트할 파일을 준비하고 테스트 코드를 준비해야 합니다.
Reference
이 문제에 관하여(Unity 테스트 코드 정보), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Riahz/items/d5c11a03512e741365aa텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)