gpt4 book ai didi

c++ - 在 Visual Studio 中执行单个 Boost Test 单元测试

转载 作者:太空狗 更新时间:2023-10-29 21:06:26 25 4
gpt4 key购买 nike

我正在尝试使用 Visual Studio 和 Boost Test 通过 C++ 项目设置单元测试。我已经阅读了这里和互联网上其他地方关于组合的所有问题,但尽管我的问题似乎很基本,但我没有找到任何关于它的信息 - 所以要么我处理错了,要么我只是愚蠢。

我有一个项目 xxx_test 测试库 xxx 中的功能,也在它自己的项目中。我想要做的是设置一种方法,从命令行一个一个地运行所有单元测试(按主题分组在 .cpp 文件中)。但据我了解,所有单元测试都被编译成一个大二进制文件,然后运行。显然,我可以为每个带有测试的 .cpp 文件设置一个单独的项目,但这会留下几十个或数百个项目,每个项目都依赖于解决方案中的 xxx 库项目。

我想我想要的是一种将所有测试 .cpp 文件放入一个项目的方法,然后能够通过命令行切换到 msbuild 选择要包含在项目中的单个 .cpp 文件。或者这不是我应该做的方式吗?每次我想运行它们时都应该编译所有测试吗?我想要做的是能够非常快速地为单个对象编译测试,这样我就不必在每次运行时都等待所有内容重新编译。谢谢。

最佳答案

通常所有的单元测试都被编译成一个大的二进制文件。但是,您只能使用 runtime parameters 从命令行运行一项测试。 .

例如,如果您编写两个单元测试:

BOOST_AUTO_TEST_CASE( testA )
{
}

BOOST_AUTO_TEST_CASE( testB )
{
}

你可以只运行第一个:

my_tests --run_test=testA

您可能会找到更多使用示例 here .

以编程方式选择要编译的 cpp 是一项更困难的任务。解决方案可能会有所不同,具体取决于您的编译时间、测试 cpps 的数量、...

关于c++ - 在 Visual Studio 中执行单个 Boost Test 单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7751875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com