Hello!
In our CI pipeline we use running complete unit test suite (all available unit tests, see repro steps). We use the entire suite as a safeguard because of the modification we do occasionally.
We noticed that release versions of UE5.6 and UE5.7 (without any modifications) have issues running all unit tests. There are multiple issues, involving crashes and failed tests. Prominent examples are crashing tests from ShaderPreprocessorTests.cpp (both UE5.6 and 5.7) failing TestFramework.Validation.TestInequalityStringNulls (UE5.7) or failing some of the CoreUObject::NativeInstancedSubobjects test. There are quite a few more failing/crashing tests. I’m assuming some of the tests failing/crashing in unattended commandline run won’t be failing when executed from editor frontend, but at this moment I don’t believe there will be many of such cases.
Due to the fact that there are failing tests in release versions, I came to the conclusion that theres a gap in my understanding of how Epic incorporate and handle the test suite - I would assume that there wouldn’t be failing tests in release versions of the engine. I would also assume that Epic incorporate running complete test suite in it’s CI it order to detect and fix regressions.
In this regard, I have two questions:
- Does Epic use some sort of a standard filter for subset of executed test on daily basis?
- In your opinion, should we be worried that some seemingly core unit tests are failing in clean release version and pursue a cherrypick fix from the main branch (//UE5/Main)? Or do you think this issue can be safely skipped?
Best regards
[Attachment Removed]