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

如何单独构建并运行clang-format(libFormat)的单元测试

如何单独构建并运行clang-format(libFormat)的单元测试

我太懂这种跑全量测试熬半天的痛苦了!针对clang-format对应的单元测试,其实有几个高效的操作方式,完全不用跟ninja check-all死磕:

  • 第一步:单独构建测试目标
    进入你的LLVM构建目录,直接运行:

    ninja FormatTests
    

    这个命令只会编译unittests/Format/FormatTest.cpp相关的测试代码以及它依赖的libFormat库,速度比全量构建快得多,改完代码后重新执行这个命令就能快速更新测试二进制。

  • 第二步:运行测试的两种方式

    1. 直接执行测试二进制
      构建完成后,测试二进制文件位于构建目录的unittests/Format/子目录下,直接运行它就能执行所有clang-format单元测试:
      ./unittests/Format/FormatTests
      
      如果只想跑某个特定的测试用例(比如你刚修改的那个失败用例),可以用Google Test的过滤参数精准定位:
      # 只跑FormatTest类下的所有测试
      ./unittests/Format/FormatTests --gtest_filter=FormatTest.*
      # 只跑某个具体测试用例,比如FormatTest.MyModifiedTest
      ./unittests/Format/FormatTests --gtest_filter=FormatTest.MyModifiedTest
      
    2. 用llvm-lit运行
      如果你习惯用LLVM的测试工具llvm-lit,也可以直接指定测试目录来运行:
      llvm-lit unittests/Format/
      
      它会自动识别并执行该目录下的测试,输出格式更符合LLVM测试套件的风格。

这样每次修改代码后,只需要重新构建FormatTests再运行对应的测试,就能快速验证结果,不用再等全量测试跑完啦!

备注:内容来源于stack exchange,提问作者Jody Hagins

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.22 14:23:01