Unity Test Framework (UTF)
Unity Test Framework (UTF)
Unity Test Framework (UTF) มีไว้สำหรับให้ผู้ใช้ Unity สามารถทดสอบโค้ดของตัวเองได้ โดยมี 2 โหมด คือ Edit Mode และ Play Mode
Edit Mode vs. Play Mode tests
Edit Mode tests
Edit Mode tests (หรือในอีกชื่อคือ Editor tests) จะ run เฉพาะแค่ใน Unity Editor เท่านั้น และสามารถเข้าถึงโค้ดใน Editor ได้Play Mode tests
เราสามารถใช้ Play Mode tests เพื่อ run test แบบ standalone ใน Player หรือแบบใน Editor โดยการ run test ใน Play Mode จะทำการ run แบบ coroutines โดยใส่ marked ด้วย UnityTest attribute
การติดตั้ง Unity Test Framework
ในหน้า Unity ให้ไปที่ Package Manager (ในเมนูด้านบนของ Unity: Window > Package Manager) จากนั้นค้นหา Test Framework แล้วกด Install
วิธีใช้งาน Unity Test Framework
ใน Unity Editor ให้เปิด Test Runner ขึ้นมาโดยไปที่ Window > General > Test Runnerจะปรากฎหน้าต่างของ Test Runner ขึ้นมา
การสร้าง Test Assembly Folder
Unity Test Framework จะหา Folder ที่มีไฟล์ Assembly Definition Asset (.asmdef) เราเรียกไฟล์เหล่านี้ว่า TestAssemblies โดยที่ Edit Mode และ Play Mode จะต้องไม่อยู่ใน Assembly เดียวกัน
เราสามารถสร้างโฟลเดอร์เหล่านั้นได้โดยการกดที่ปุ่ม Create EditMode Test Assembly Folder บนหน้าต่าง Test Runner หรือไปที่เมนู Assets > Create > Testing > Tests Assembly Folderโดยค่าเริ่มต้นของการสร้าง Tests Assembly Folder ด้วยเมนู Assets นั้น จะเป็น Play Mode test หากต้องการเปลี่ยนเป็น Editor Mode test ให้เลือก Tests.asmdef ไปที่หน้าต่าง Inspector ในส่วนของ Platforms ให้เลือกเฉพาะ Editor เท่านั้น
การสร้าง Test ใหม่
เราสามารถสร้าง Test ใหม่ได้โดยการกดที่ปุ่ม Create Test Script in current folder โดยจะต้องเลือก Assembly Folder ที่สร้างไว้ก่อนหน้านี้ หรือกดคลิ๊กขวาในหน้าต่าง Project เลือก Create > Testing > C# Test Script
การ Run test
สามารถกด Run All เพื่อ run ทุก test หรือ Run Selected เพื่อ run แค่เฉพาะ test ที่เลือกได้ที่หน้าต่าง Test Runner
ลองเขียน test ให้ fail ดู โดยเราใช้ Assert ในการ test