DaedalicEntertainment / ue4-test-automation

Facilitates setting up integration test suits with Unreal Engine 4 Gauntlet.
https://www.daedalic.com
MIT License
215 stars 62 forks source link

JUnitReportPath and Multi target builds #22

Closed eddiebeazer closed 2 years ago

eddiebeazer commented 2 years ago

Apologies if these come across as silly issues. I couldn't figure out how to get a JUnit report to output while attempting to use a multiclient config. When I use 1 client, I get a report. If I use 1 client and 1 server or n clients where n > 1, no report outputs. Was wondering if anyone found a solution for this.

Also the second issue I'm having is being able to spin up a client in Win64 and a server in Linux. The RequireRole function has a value for global::UnrealBuildTool.UnrealTargetPlatform PlatformOverride but I can't get it to work for the life of me. I also tried seeing if I can import the UnrealBuildTools dll's from the Engine source and had no luck. I imagine this might just be me not knowing how to use c# correctly. I spent a fair deal of time on it so I imagine I'm just completely missing something.

Here's my current config

using Gauntlet;

namespace DaedalicTestAutomationPlugin.Automation
{
    public class DaeGauntletTest : UnrealTestNode<DaeTestConfig>
    {
        public DaeGauntletTest(UnrealTestContext InContext) : base(InContext)
        {
        }

        public override DaeTestConfig GetConfiguration()
        {
            DaeTestConfig Config = base.GetConfiguration();
            Config.PreAssignAccount = false;
            Config.NoMCP = true;

            UnrealTestRole Client = Config.RequireRole(UnrealTargetRole.Client);
            UnrealTestRole Server = Config.RequireRole(UnrealTargetRole.Server);

            Client.Controllers.Add("DaeGauntletTestController");

            return Config;
        }
    }
}