CLion如何添加测试模块

小晨同学_3909

小晨同学_3909

2026-09-12

173人浏览

原创

clion不提供独立的“添加测试模块”操作,需通过cmake集成测试框架(如google test、catch2)并配置add_test等指令,再手动创建或保存永久运行配置才能识别和运行测试。

clion如何添加测试模块

CLion 本身不提供“添加测试模块”这个独立操作,而是根据你选用的测试框架(如 Google Test、Catch2、Boost.Test、Vitest)和项目构建系统(CMake / Meson / Gradle)自动识别或需要你手动配置测试支持。 直接在项目里新建一个 .cpp 文件写 TEST_CASETEST_F 不会自动变成可运行的测试——必须让 CLion 知道“这是测试”,且构建系统能编译它。

确认测试框架是否已集成到 CMakeLists.txt

这是最常被跳过的一步。CLion 不会主动把任意源文件当测试,它依赖 CMake 的 add_test 或测试框架的启用逻辑来发现测试。

  • Google Test:需在 CMakeLists.txt 中调用 find_package(GTest REQUIRED),并用 add_executable 构建测试二进制,再用 add_test 注册
  • Catch2:通常只需把 catch_amalgamated.hpp 加入项目,并确保测试文件被 add_executable 包含;若使用 CATCH_CONFIG_MAIN,则该文件必须是唯一含 main() 的测试入口
  • CTest(通用包装器):只要 CMake 中有 enable_testing() 和至少一个 add_test(...),CLion 就能自动创建 All Tests 配置

如果 CMakeLists.txt 里没有这些,CLion 就看不到测试——哪怕你写了 100 个 TEST_CASE,装订区也不会出现运行图标。

手动触发测试识别:右键 → “Create ‘xxx’”

当你已经写好测试文件(比如 test_vector.cpp),但 CLion 没自动识别,可以主动干预:

C++
C++

"空空如也"

下载
  • Project 工具窗口中右键点击该测试文件
  • 选择 Create 'test_vector'(菜单名会动态显示文件名)
  • CLion 会尝试基于文件内容推断框架,并创建对应类型的运行配置(如 Catch2 ApplicationGoogle Test
  • 若失败,说明文件缺少框架必需元素(例如 Catch2 缺少 #define CATCH_CONFIG_MAIN,或 Google Test 没包含 gtest/gtest.h

这个操作本质是让 CLion 基于当前文件生成一个临时运行配置,不是“注册模块”,而是“临时跑一次”。要长期可用,仍需补全 CMake 集成。

检查运行配置是否为永久配置

临时配置图标是半透明的,关掉 IDE 就消失;永久配置才真正“落地”。

  • 运行测试后,在顶部运行配置切换器里看到的是临时配置(灰色图标)
  • 点击切换器旁的 Save Configuration,或打开 Run | Edit Configurations 后选中它点磁盘图标,才能转为永久配置
  • 永久配置会出现在项目 .idea/runConfigurations/ 下,下次打开 IDE 仍可用
  • 若配置图标带红色叉号,说明路径、工作目录或 Executable 字段指向错误——常见于测试二进制未生成或路径写死

很多人以为点一下就能“加模块”,其实只是临时执行;真正让测试稳定出现在项目结构里,靠的是 CMake + 永久配置双保险。

最容易被忽略的是:CLion 对测试的支持完全被动——它不修改你的 CMakeLists.txt,也不帮你下载框架头文件。你得先让构建系统能编译出测试可执行文件,CLion 才有东西可运行。否则所有点击操作都只是空转。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Vibeknow在线使用入口合集
Vibeknow在线使用入口合集

本专题汇总了Vibeknow在线创作视频的官方入口及网页版使用教程,涵盖PPT、PDF、Word等文档一键转讲解视频的核心操作,并整理了免费版水印规则与手机端浏览器访问指南,助你快速将知识内容视频化。

2026.09.21

0

20

NumPy随机数文件读写与dtype数据类型
NumPy随机数文件读写与dtype数据类型

本专题整理 NumPy 随机数、文件读写与 dtype 数据类型相关教程,覆盖 Generator/random、随机数种子、正态分布采样、npy/npz/CSV/TXT 保存读取、loadtxt/savetxt、memmap、大文件处理、astype 类型转换、结构化 dtype、整数溢出和精度丢失等场景。

2026.09.21

0

24

NumPy矩阵运算与线性代数计算
NumPy矩阵运算与线性代数计算

本专题整理 NumPy 矩阵运算与线性代数计算相关教程,覆盖矩阵乘法、dot 与 @ 运算符、逆矩阵、行列式、特征值与特征向量、SVD、线性方程组、欧氏距离、矩阵分解和大规模矩阵性能优化等内容,帮助读者掌握 np.linalg 与矩阵计算实战。

2026.09.21

0

20

NumPy广播机制数学运算与统计分析
NumPy广播机制数学运算与统计分析

本专题整理 NumPy 广播机制、数组数学运算与统计分析相关教程,覆盖广播规则、维度对齐、矩阵与数组加减除法、向量化计算、均值方差、分位数、中位数、直方图和 unique 频次统计等场景,帮助读者掌握 ndarray 高效计算与统计处理方法。

2026.09.21

0

17

NumPy数组创建索引切片与数据选择
NumPy数组创建索引切片与数据选择

本专题整理 NumPy 数组创建、索引、切片与数据选择相关教程,覆盖 np.array、zeros/ones、多维数组形状、基础切片、花式索引、布尔索引、条件筛选、视图与副本等常用场景,帮助读者系统掌握 ndarray 数据构造与高效提取方法。

2026.09.21

0

12

Aionclaw智能助手介绍
Aionclaw智能助手介绍

本专题汇总了AionClaw(AI龙虾助手)的功能介绍与在线使用入口。AionClaw是杭州趣猿人工智能有限公司推出的桌面级AI智能体,能直接在电脑上读写文件、运行脚本、操作浏览器,自动交付Word、PPT、Excel等成品。

2026.09.20

20

13

AionClaw AI智能体与电脑自动化任务执行功能使用教程
AionClaw AI智能体与电脑自动化任务执行功能使用教程

AionClaw专题整理AI智能体与电脑自动化相关功能使用教程,涵盖安装部署、AI任务执行、Skills技能、文件处理、浏览器控制、电脑操作、持久记忆、聊天工具连接以及办公、编程和内容创作等功能,帮助用户快速掌握AionClaw的实际使用方法。

2026.09.20

0

15

AI视频生成软件推荐
AI视频生成软件推荐

本专题汇总了当前主流的AI视频生成软件推荐与排行榜单,涵盖seko、AniShort、剧云、Lovart、LiblibAI及立刻mv等热门工具。同时整理了各软件在文生视频、图生视频、时长限制、画质表现及免费额度等方面的差异对比,助您快速选对适合创作需求的AI视频生成工具。

2026.09.16

200

9

ai生成视频的工具免费版合集
ai生成视频的工具免费版合集

本专题汇总了当前免费AI生成视频工具的排行榜与推荐清单,涵盖seko、讯飞智作、AniShort及剧云、Lovart等多模型集成平台。同时整理了各工具的免费额度、输出时长、水印政策及适用场景差异,助您快速选择合适工具开启AI视频创作。

2026.09.16

100

10

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程