When running tests in edit mode several times, the static constructor is only called once (except if there's a recompile, in which case it will be called again, one time). Context: When I exit my game, most of the data are cleared, including some static data. Specifically, I have an array which is cleared (filled with 0) when exiting. Problem: If I run my game in the editor, and then exit the game (not Unity), it works perfectly fine. The array is cleared as it should be. When I start again the game, it works perfectly, the static constructor initializing the array is called and everything works perfectly. But, if I start the tests after having executed the game, the array is full of 0 (which shouldn't happen as it is is filled with non-0 values in the static constructor). Adding a log in the static constructor indicates it is not called as the log is never logged. If I modify the source code (in order to force a recompile), then it works fine, once. In short, it means that the static constructors aren't called when there's no recompilation. Meaning that there is a workaround, but if there's a way to fix that it would be better. I am using Unity 2019.2.17, and I heard about some optimization to enter in play mode, by avoiding some recompilation in some future version of Unity. I guess that it will cause the same problem, which would be a lot more critical as it would mean that entering play mode will not work anymore.