You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Visual Studio即时窗口的Xcode等效工具是什么?能否免编译调试调用测试函数?

Xcode中对应Visual Studio即时窗口的等效工具

当然有!Xcode里最接近VS即时窗口的是调试控制台(Debug Console),它依托LLDB调试器,功能和即时窗口高度相似:

  • 当你的程序处于调试暂停状态(比如命中断点、手动暂停),可以直接在控制台输入表达式、调用函数,实时查看返回结果
  • 你也可以用LLDB的expr命令来显式执行代码,比如调用带参数的函数:expr calculateTotal(10, 20),控制台会立刻返回计算结果

另外,如果你习惯命令行操作,直接在Xcode的调试区域切换到LLDB命令行模式,也能完成所有即时窗口的操作。

无需编译整个应用/调试模式直接调用函数的实现方法

这个需求完全可以实现,我平时开发常用这几个方案:

  • Xcode Playgrounds:这是最便捷的方式!

    • 新建一个Playground文件,如果你要调用项目里的自定义函数,只需要把Playground关联到你的项目target(在Playground右侧的“File Inspector”里选择对应的target)
    • 之后你就可以在Playground里直接导入项目模块,调用任意带测试参数的函数,实时在右侧面板看到返回结果,全程不需要编译整个应用、不需要设置断点
    • 比如:
      import MyAppModule
      let testResult = myCustomFunction("testParam", count: 5)
      
      右边会立刻显示testResult的值
  • 独立命令行工具Target

    • 如果你的函数是纯业务逻辑,不依赖UI组件,可以在项目中新建一个“Command Line Tool”类型的target
    • 在这个target的主文件里编写函数调用代码,单独编译并运行这个target(比编译整个应用快很多),结果会直接输出在控制台
    • 这种方式适合需要多次测试不同参数,或者函数依赖简单的场景
  • 单元测试用例

    • 虽然需要编译测试target,但不需要编译整个应用。你可以写一个简单的测试用例,在其中调用目标函数并断言结果,运行单个测试用例就能看到函数返回值,还能顺便验证结果是否符合预期

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

火山引擎 最新活动