在 Gauntlet 测试中我们经常需要往 UAT 或是游戏中传入一些命令行参数,来自定义一些内容,那么如何传参呢
向 UAT 传参
已知 Gauntlet 命令行启动选择 Gauntlet 脚本的使用的是
-test=xxxx.xxxx.xxxx
其中 xxxx.xxxx.xxxx 为 Gauntlet 的测试配置脚本
如果要向里面传参,则在后面加上括号,括号里参数用逗号隔开即可
例如
-test=xxxx.xxxx.xxxx(Arg1=Value1,Arg2)
这样参数就会传递到 UAT 中
那么如何使用呢
在 Gauntlet 脚本工程中,新建一个 Config 类继承 EpicGame.EpicGameTestConfig
例如
1 | public class TestConfig : EpicGame.EpicGameTestConfig |
然后更新自己的 Gauntlet 配置脚本,并让其使用自定义的 TestConfig
1 | public class MyTest : UnrealTestNode<TestConfig> |
这样就可以在 UAT 中使用自定义参数了
向游戏中传参
在 TestConfig 类中重写函数
1 | public override void ApplyToConfig(UnrealAppConfig AppConfig, UnrealSessionRole ConfigRole, IEnumerable<UnrealSessionRole> OtherRoles); |
然后利用 AppConfig 参数,往游戏中添加命令行参数
例如,如果游戏中需要用到 Arg1,Arg2 那么
1 | public override void ApplyToConfig(UnrealAppConfig AppConfig, UnrealSessionRole ConfigRole, IEnumerable<UnrealSessionRole> OtherRoles) |
这样就可以往游戏中添加命令行参数啦~