TeamCity On-Premises 2025.07 Help

远程调试

远程调试是一项功能,允许您在本地开发者机器的IDE上远程调试在TeamCity代理机器上的测试。 当代理环境在某些方面独特,导致测试失败,并且在本地难以复现问题时,此功能将非常有用。

启用了 IntelliJ-based IDEs 的 TeamCity 集成 后,可以直接从 IntelliJ IDEA 启动基于 IntelliJ IDEA 项目和 Ant 构建步骤的构建的远程调试会话。

目前,支持以下的 IntelliJ IDEA 运行配置:

  • Java 应用程序运行配置

  • JUnit 运行配置

  • TestNG 运行配置

Ant 步骤的远程调试要求构建配置具有 teamcity.remote-debug.ant.supported=true 参数

前提条件

远程调试测试

  1. 要开始远程调试测试,请选择测试并从上下文菜单中选择 在 TeamCity Agent 上远程调试 <Test Name> 选项(远程调试 操作也可以从 TeamCity 插件菜单中使用)。 此操作将要求您选择一个 IntelliJ IDEA 运行配置。

  2. 一旦您做了这个,TeamCity 插件将要求您选择一个构建配置,您希望在其中开始调试会话。 这个过程与启动个人构建类似。 例如,如果有个人更改,将创建一个个人补丁并发送给代理。 同样,由于过程基本相同,当您选择构建配置时,您可以指定代理,自定义属性等等。

    remote_debug_conf_selected.png

  3. 如果所选配置包含多个 IntelliJ IDEA 项目构建步骤,插件将让您选择在哪些构建步骤开始调试会话。

    remote_debug_step_selected.png

  4. 在此之后,构建将被添加到队列中,标准的 IntelliJ IDEA 调试工具窗口将会出现:

    remote_debug_tool_window.png
    调试工具窗口工作在监听模式,即它在等待代理连接至它。 一旦代理连接,代理上的 Java 进程将暂停,且在 IDE 中会出现 Agent Attached 通知:
    agent_attached_popup.png

  5. 现在我们可以设置一些断点,并通过点击 启动 在通知弹窗或调试工具窗口中实际启动调试会话。
    一旦 JVM 进程退出,IDE 中会出现另一个通知弹窗:

    repeat_debug_notification.png
    调试会话尚未结束,您可以选择重复或结束它。 选择 重复 将重新运行相同的构建步骤,这比启动新的调试会话快得多。

最后修改日期: 2025年 9月 3日