This guide should help you get up and running with your first automated performance tests using the newly-released (and very experimental) Automated Performance Testing plugin and framework.
https://dev.epicgames.com/community/learning/talks-and-demos/0zx9/unreal-engine-a-tech-artist-s-guide-to-automated-performance-testing-unreal-fest-bali-2025
Hey Matt,
This thing works, and thank you for that. I tested it both locally and via Horde.
A few nuances when setting it up via Horde:
- Reports didn’t generate locally on agent until I added -set:ExtraGauntletCommonArgs=-SkipPerfReportServer -LocalReports.
And judging by this comment in the code, the only option at the moment to generate a report is to do it locally on the agent.
/// /// Attempts to create the PerfReportServerImporter. /// This importer is currently internal to Epic and such /// this function will return null when not used internally. ///
- The Horde Agent must be run as a separate application, not as a service. Otherwise, the test won’t have access to the GPU context and won’t run.
I haven’t dug deep yet, but it seems there’s no way to add new custom tests without modifying the plugin code?
Hey @UsefulCode! Sorry I missed the note. Looks like there’s a few things to clean up in the report generation function. The way the arguments get set and passed around has a few double/triple negatives that can get confusing. I think for the time being your solution works well (and I’ll add it to the article), and we’ll see about tidying that up for a future release.
Does this support setting which DataLayers should be part of the test somehow?
Hey @eriktenstar
You can specify which Game Mode to use for your test. And within the Game Mode, you can add any logic specific to your test, including loading/unloading the required Data Layers.
Automated Performance Testing plugin is excellent.
However, I personally really missed the functionality provided by the standard Perf Report Tool. I especially missed the ability to create comparative reports between multiple CSV captures. So, I created the Performance Analyzer plugin and use it in conjunction with the Automated Performance Testing plugin.