You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity测试调用Press函数报错‘当前上下文不存在’,求原因排查

解决Unity测试中Press函数未识别的问题

核心问题很明确:你调用的Press方法是InputTestFixture类的成员方法,而你的测试类MovementTest没有继承这个类,所以当前上下文找不到这个方法。

按照以下步骤修改即可解决:

  1. 让测试类继承InputTestFixture
    修改你的类定义,加上继承关系:

    public class MovementTest : InputTestFixture
    

    你已经引入了UnityEngine.InputSystem命名空间,这一步没问题。

  2. 规范SetUp方法(可选但推荐)
    InputTestFixture本身自带初始化逻辑,建议在你的SetUp方法里先调用基类的初始化,避免潜在问题:

    [SetUp]
    public override void Setup()
    {
        base.Setup(); // 初始化InputTestFixture的测试环境
        SceneManager.LoadScene("TestPlayModeScene");
        keyboard = InputSystem.AddDevice<Keyboard>();
        Press(keyboard.rightArrowKey);
    }
    

补充说明:你参考的官方文档里的Press方法,本身就是InputTestFixture提供的测试工具方法,必须通过继承该类才能直接调用,之前的代码因为没有继承,所以编译器找不到这个方法。

内容的提问来源于stack exchange,提问作者lapassey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 23:53:25