In this series extension, we deep dive into performance testing for Unity ECS. With Unity’s multiple approaches to do the same thing, testing has been crucial in optimizing my game. Many developers, like me, held off using Unity.Entities until the 1.0 launch because the API kept changing. Performance testing allows us to compare different techniques quickly. Talking about parallelization, it’s hard to tell if your code is running better on the main thread or otherwise, unless you test it. Through testing, we can decipher minute performance differences. I also use tests to track performance after optimization attempts and minor code updates. I’ve further explained the test setup and provided code examples for clarity.
Incorporating automated testing in game development helps ensure core logic functions correctly despite data modifications from other systems. This post explores unit testing within ECS games, particularly in Unity.Entities. I will share how I write unit tests for key systems and demonstrate how to easily set up testing for games built with Unity ECS, using my game as an example.
Make the code testable, as well as introduce an important principle that improves your architecture by making it cleaner and more flexible