问题标签 [ctest]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
124 浏览

cmake - 跨平台数值测试?

我需要测试在 Linux 和 Windows 上运行的数值软件。测试涉及将输出与已知良好的输出等进行比较,类似于 数值回归测试中描述的内容。为了澄清,输出不一定是数字 - 它们可以是分类器或文本的分类预测。在 Linux 上,这是一个差异;在 Windows 上是另外一回事,但我的目标是每个测试只编写一次。我知道 CMake/CTest 可用于生成跨平台测试,但它们似乎仅限于检查非零退出状态。是否有软件可以在每个平台上自动选择正确的“差异”?也许是我不知道的 CTest 模块/包?

0 投票
1 回答
1521 浏览

cmake - How do I add the -j option to my ctest cmake file?

I would like to run parallel jobs when running ctest. I tried setting

in

but this didn't change the command line options after I re-generated my build files.

I am on windows, using visual studio.

0 投票
3 回答
5525 浏览

cmake - ctest可以显示googletest控制台颜色吗

我正在启用 ctest 的 cmake 项目中构建和运行使用 googletest 构建的单元测试

我用“ctest -VV”运行测试

但测试输出不会为“红色”和“绿色”着色

[运行] [确定] [通过]

有谁知道是否有 ctest 选项允许这些颜色渗透到控制台?

0 投票
1 回答
114 浏览

c++ - googletest 与 ctest“意外格式:”错误

我有一个使用 googletest 实现的 c++ 测试类,所以它完美地传递了 Xcode,输出如下:

但是,当我尝试使用ctest命令在终端上运行相同的测试时,它会给出一个奇怪的错误Unexpected format:,输出如下:

对于 Xcode 和 ctest,使用相同的 iOS 模拟器,我不明白为什么测试输出给出的结论是“失败”或“通过”。我已经搜索了很多该错误,但找不到任何合理的答案,所以请帮忙。

更新:
原来 ios 模拟器工具ios-sim对运行时间超过 30 秒的应用程序有问题(我尝试了一个 googletest 类,该类具有三个空函数,它们之间有 15 秒的延迟,应用程序在第二个时崩溃),模拟器崩溃该应用程序,但还没有找到原因。

0 投票
1 回答
3272 浏览

c++ - 仅使用 CMake/CTest 运行更改或失败的测试?

我在一个拥有近 400 个测试可执行文件的大型代码库上工作,运行时间在 0.001 秒到 1800 秒之间变化。当一些代码更改时,CMake 将仅智能地重建已更改的目标,这比实际测试运行花费的时间要短很多。

我知道的唯一方法是手动过滤您知道要运行的测试。我的直觉告诉我,我想重新运行任何没有存储成功运行的测试套件——要么因为它失败,要么因为它被重新编译。

这可能吗?如果是这样,怎么做?

0 投票
1 回答
559 浏览

c++ - CMake:运行ctest时可执行文件崩溃

我在 Windows 上为 MSVC++ 项目配置 CMake 构建项目。它构建可执行文件,然后将其安装到定义的目录中。在我的情况下是:

${CMAKE_SOURCE_DIR}/x64/${CMAKE_BUILD_TYPE}/

可执行文件在同一目录中有一个文件夹,其中包含在启动时加载的文件。如果我手动启动 .exe,它会打开并运行正常。但我想通过 ctest 来完成。我这样定义 ctest :

当我从 cmd 调用时:

可执行文件正在启动但立即崩溃并出现错误:

调试错误!

程序:../..../.../MyApp.exe

R6010 -abort() 有

被调用。

实际上,在检查 CMake 的 Last Test.log 文件时,它显示它不是在“WORKING_DIRECTORY”中运行测试,而是在 CMake 构建 MyApp.exe 的目录中运行测试。我该如何更改它?

0 投票
2 回答
17136 浏览

c++ - Catch lib(单元测试)和 CTest(CMake)集成

我正在寻找 Catch CatchLib的成功示例与 CMake 测试 (Ctest) 集成的成功示例。据我了解,这是必须解析应用程序输出的附加 cmake 脚本?有人已经写过这个了吗?大概分享了这个?

====================================================

更新(已找到解决方案):

我已将cmake 脚本提交给 CatchLib ,以便将 Catch 与 CTest 集成。这是 Fraser99 的 cmake 脚本的简化版本

0 投票
0 回答
201 浏览

cmake - 如何设置 CTEST_SOURCE_DIRECTORY

我正在尝试设置 CTest 来运行覆盖率分析。似乎我必须制作一个 MyScript.cmake 文件并使用ctest -S MyScript.cmake. 我认为一个简单的示例可能如下所示:

但我得到

我不想在脚本文件中硬编码这个路径,因为我可能想在不同的地方运行它,那么我应该在哪里获取CTEST_SOURCE_DIRECTORYand的路径CTEST_BINARY_DIRECTORY

0 投票
1 回答
1061 浏览

cmake - 找不到 CTest 配置

我正在尝试对使用 CMake+CTest 的项目进行覆盖率分析。我创建了一个简单的 TestingScript.cmake,如下所示:

并尝试使用以下方式运行它:

我需要做什么来生成它正在寻找的这个 CTestConfig.cmake 文件?

0 投票
1 回答
191 浏览

c - Cmake ctest 生成

我正在使用 CMake 和 ctest 来生成软件测试。例如,我有一个二进制文件foo,它恰好有三个输入参数 p1, p2, p3. 参数范围为 0-2。foo要使用所有可能的组合检查我的二进制文件p1, 我在我的 CMakeList.txt 中执行以下p2操作p3

是否有更“优雅”的方式来生成所有这些不同的测试?假设foo需要 10 个参数p1,...,p10这看起来很可怕。提前致谢。