Boost 测试错误:main 已定义

2023-12-23

我有一个Visual Studio我想做一些单元测试的项目Boost.Test.

我有 2 个文件:

File 1:

#define BOOST_TEST_MODULE FileX

#include <boost/test/unit_test.hpp>
#include <stdio.h>

BOOST_AUTO_TEST_SUITE(test_suite_name)

BOOST_AUTO_TEST_CASE(TestFileX)
{
    BOOST_CHECK(true);
}


BOOST_AUTO_TEST_SUITE_END()

和文件2:

#define BOOST_TEST_MODULE XContainer

#include <boost/test/unit_test.hpp>
#include <stdio.h>

BOOST_AUTO_TEST_SUITE(test_suite_name2)

BOOST_AUTO_TEST_CASE(TestXContainer)
{
    BOOST_CHECK(true);
}

BOOST_AUTO_TEST_SUITE_END()

当我编译项目时,出现链接错误,表明 main 已定义。 我注意到main文件定义于unit_test.hpp但我需要将它包含在测试宏中。

我应该如何在 2 个单独的文件中添加 2 个测试用例?


真正的问题是 BOOST_TEST_MODULE 只能在整个测试可执行文件中定义一次。定义 BOOST_TEST_MODULE 还定义了 BOOST_TEST_MAIN,它引入了 main 的实现。

因此,在一个地方将 BOOST_TEST_MODULE 定义为全局套件的名称,因此还定义 BOOST_TEST_MAIN 以获得 main 的单个实现。

这是我需要在我的文章中注意到的一个微妙之处文档重写 http://user.xmission.com/~legalize/boost.test/libs/test/doc/html/index.html.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Boost 测试错误:main 已定义 的相关文章

  • 不同提供商的相同 EDMX 文件

    我正在开发一个项目 其中有一个本地数据库 SQL CE 在不存在与服务器的连接的情况下用作缓冲区 在服务器上我想使用相同的数据库布局 当然 我想使用服务器和客户端上可用的 Common dll 中的相同 EDMX 文件 在客户端中 我有一个
  • 成员字段、构建顺序

    在 C 中 当执行如下所示的操作时 构造顺序是否得到保证 Logger Logger kFilePath logs runtime log logFile kFilePath 是的 施工顺序始终得到保证 但是 不能保证它与对象在初始值设定项
  • 如何向WebRequest添加参数?

    我需要从 Web 服务调用一个方法 所以我编写了以下代码 private string urlPath http xxx xxx xxx manager string request urlPath index php org get or
  • C# 中直接从 URL 获取图像尺寸

    我正在尝试使用以下代码直接从网络上获取图片的尺寸 string image http www hephaestusproject com csharp3 png byte imageData new WebClient DownloadDa
  • C++ 中的“int”默认是“signed long int”吗?

    Is int默认情况下signed long int in C 它是否依赖于平台和 或编译器 如果是这样 怎么办 EDIT 以下任何一项是否保证是重复的 signed short int signed int signed long int
  • 在异步请求中使用超时回调

    我之前问过这个问题 但我将用提出的解决方案来完成这个问题 并提出另一个问题 我正在使用这个类来进行异步网络请求 http msdn microsoft com en us library system net webrequest aspx
  • 使用 GCHandle 将大型结构数组从 C# unity 脚本传递到 C++ dll 在 C++ 函数执行后崩溃

    我想从 C unity 脚本将结构数组传递给 c 本机插件 我做了如下操作 我可以访问数据 但我的应用程序在执行 c 函数后崩溃 我不知道为什么 C side StructLayout LayoutKind Sequential publi
  • 如何检查号码是否只有唯一的数字?

    例如 2345 是唯一的数字 因为没有数字显示两次 但 3324 不是唯一的数字 因为 3 出现了两次 我尝试使用 但我 代码 显示但我没有得到数字我得到了数字 编辑 你不能使用字符串 number 10 number 100 number
  • 如何部署包含第三方 DLL 文件的 C# 应用程序?

    首先 我对部署了解不多 我希望我的问题有意义 我需要将 C 应用程序安装 部署到多个桌面 它需要一个第三方 DLL 文件 一个 C 库 lpsolve55 dll 对于那些感兴趣的人 它是一个免费的 MIP LP 求解器 请参阅 lpsol
  • 如何在 ASP.NET Core 6.0 Web API 项目中启用 cors?

    在我的 ASP NET Core 6 0 Web API 项目中配置了 CORS 但预检请求收到 http 405 错误 换句话说 不允许使用 HTTP OPTION 看起来 cors 没有启用 我见过的例子config EnableCor
  • AcceptSocket 超时?

    是否有可能AcceptSocket on a TcpListener具有超时的对象 以便它偶尔被中断 TcpListener server new TcpListener localIP port server Start while sh
  • 根据 Active Directory 策略检查密码[重复]

    这个问题在这里已经有答案了 我有一个允许用户更改其 AD 密码的前端 有没有办法获取特定用户及其属性 长度 复杂性 的密码策略 例如细粒度 有没有办法根据此特定策略检查字符串 xyz121 编辑 我不想检查活动目录中存储的当前密码 我想检查
  • 禁用实体框架的默认值生成(Code First)

    我数据库中有一个列不能为空 我想将其设置为默认值在数据库中 问题是实体框架似乎自己创建了一个默认值 例如 int gt 0 并且完全忽略了数据库中的默认值约束 有没有办法禁用实体框架的默认值 我发现您可以使用以下属性来装饰您的字段 Data
  • 如何在 ASP.NET Core 项目中使用 MStest 测试 Ok() 结果

    我正在使用 MStest 来测试我的控制器 我想测试这个动作 HttpGet Name GetGroups public async Task
  • 删除数组时出现访问冲突异常

    删除分配的内存时 出现 访问冲突读取位置 异常 如下所示 我有一个针对 Visual Studio 2010 工具集 v100 C 编译器编译的本机 dll 我有一个针对它的托管 dll 包装器 它是针对工具集 v90 编译的 因为我想以
  • 如何阻止 Control-I 在 CoreWindow 范围内的 UWP 文本框中插入选项卡?

    当我在 UWP 应用程序中有一个 TextBox 时 对我来说 奇怪的行为 在 Windows 10 中创建通用的空白应用程序 UWP 应用程序 使用以下代码将文本框添加到默认网格
  • 使用 WinAPI 连接禁用的显示设备

    我的问题是启用禁用的监视器ChangeDisplaySettingsEx 我想这不是火箭科学 但经过一番挖掘后 它看起来仍然是不可能的 我找到了一种根据找到的 Microsoft 代码示例禁用所有辅助显示器的方法here https msd
  • Web API 2.0 使用 pascalcase 模型接收驼峰式命名的 JSON 数据

    我正在尝试对我的 Web API 进行 PUT 调用 我在 WebApiConfig cs 中设置了以下内容 以处理以驼峰形式将数据发送回我的 Web 项目 config Formatters JsonFormatter Serialize
  • C# 和断点 - 这里有魔术师吗?

    我有这个 public static void ByLinkText string text for var i 0 i lt 50 i try Setup Driver FindElement By LinkText text Click
  • boost::spirit::qi::语法和可变参数模板

    我在使用可变参数模板定义语法时面临一个问题 我首先定义一些包含在某些结构中的简单语法 例如纬度 经度 如下所示 include

随机推荐

  • 防火墙上需要哪些开放端口才能允许 salt-stack 远程执行?

    saltstack 上的文档似乎不清楚 salt master gt salt minion 需要哪些端口 显然不需要 它建议只需要从 salt minion gt salt master 打开端口 看 http docs saltstac
  • yyerror 的 Bison 冲突类型

    我试图用 flex 和 bison 制作一个计算器 但在编译过程中发现了一个错误 这是错误 C GnuWin32 src gt gcc lex yy c y tab c o tugas tugas y 51 error conflictin
  • 如何在打字稿中显示按钮点击验证

    我想显示对空字段的验证 为此我使用了以下方法 但它不起作用 任何人都可以建议我提供帮助吗 谢谢 我的模板
  • Objective-C 中的 MAXFLOAT

    最大浮动定义为 math h define MAXFLOAT 0x1 fffffep 127f 我有点难过我以前从未注意到这一点 这实际上说的是什么呢 我本来期望这样的事情 define MAXFLOAT 0xFFFFFFFF 1 这还能用
  • 将 perl 脚本转换为 vba

    我使用的 PC 不允许使用 perl 脚本 有没有什么工具可以将perl脚本转换为vba宏 或者是否有任何链接可以让我们获得 perl 语句的 vba 等效项 假设您可以访问一台可以运行 Perl 的机器 您可以尝试使用PAR Packer
  • 如何在 PHP 中抽象 mysqli 准备好的语句?

    我正在使用自己的类进行数据库查询 扩展 mysqli class iDatabase extends mysqli public errorMsg private totalQueries private stmt public funct
  • 在 odoo v9 中关闭向导后显示成功消息

    在 odoo 9 中关闭向导后显示成功消息的最佳解决方案是什么 右上角有小弹出窗口吗 这不是您问题的正确答案 但我遇到了同样的问题 问题是当用户单击向导上的提交按钮时 我必须显示 成功提交 消息 我已经这样做了作为我的解决方案 我已经做到了
  • 验证服务帐户以使用 JavaScript 客户端库调用 Google API

    我要实现JSON RPC从 localhost WAMP 环境 调用Google 融合表 API https developers google com fusiontables docs v2 getting started 以及其他一些
  • TinkerPop 中的 next() 意味着什么

    我目前正在阅读 TinkerPop3文档 http tinkerpop incubator apache org docs 3 0 1 incubating 我感到困惑的是我找不到任何解释next 例如 with next 或 w o ne
  • HBase 和 Hadoop/HDFS 的区别

    这是一个幼稚的问题 但我是 NoSQL 范式的新手 对此了解不多 因此 如果有人可以帮助我清楚地理解 HBase 和 Hadoop 之间的区别 或者给出一些可能帮助我理解区别的指示 到目前为止 我做了一些研究和记录 据我了解 Hadoop
  • Jooq 支持 Joda-Time 吗?

    我们正在寻找不同时区的日期时间支持 Hibernate 似乎支持 Joda 时间 不知道 JOOQ 是否也支持 jOOQ http www jooq org本身不支持 Joda Time 或任何其他第三方数据类型 但您可以轻松配置 jOOQ
  • 是否可以使用 INSERT 命令将数据插入到表的中间部分?

    例子 索引 一些数据 1 一些 数据1 3 一些数据3 4 一些 数据4 5 一些 数据5 我想做一个 INSERT 来添加 gt 2 一些 数据2 有没有 SQL 命令或某种方法可以做到这一点 edit 好的 也许如果我解释我想要完成的每
  • Eclipse 错误:未绑定类路径容器

    我制作项目后收到两条错误消息 在解决构建路径错误之前 无法构建项目 未绑定的类路径容器 项目 method test 中的 JRE 系统库 OSGi Minimum 1 2 我认为如果我弄清楚第二个错误 第一个错误就会消失 但是 我在 10
  • 如何使用附加信息(如参数)在java中创建自定义堆栈跟踪?

    我被分配了一项任务来创建自定义堆栈跟踪 例如某些指定函数的输出到日志文件 但我不仅需要使用类和方法名称 还必须输出参数及其值 这应该是一个单独的 jar 可以在任何 java 项目上运行 我什至不知道这样的事情是否可能 更不用说从哪里开始了
  • 对于不引用可执行文件的命令,相当于“which”的是什么?

    我试图找出特定命令是如何定义的 我已经检查了所有位置 PATH并且找不到任何像我的命令那样命名的文件 所以它似乎是其他东西 这是一个使用 nvm 的示例 它不是可执行文件 me MacBook which cat bin cat me Ma
  • 安装 Ruby 1.9.3 时出错

    我通过 rvm 安装 Ruby 1 9 3 时遇到错误 rvm install 1 9 3 p0 Installing Ruby from source to home alder rvm rubies ruby 1 9 3 p0 this
  • 使用 jQuery Quicksand 时 CSS 冒泡

    我正在使用 jQuery Quicksand 创建可过滤的文章组合 http davekiss com new http davekiss com new 问题是 当单击侧边栏段落中的过滤器 视频 网站 动态图形 时 正在过滤的文章上的 C
  • 如何在 C# 中处理双重解析中的文化?

    我有一个关于如何在解析双打时处理文化的问题 在系统中 来自不同服务器的价格信息汇集在一起 然而 作为输入给出的数据因文化而异 两百万五十美分如下 2 000 000 50 2 000 000 50 2000000 50 2000000 50
  • Android 4.0如何实现全屏

    Android 4 0 手机只有虚拟按钮 当全屏播放 YouTube 视频时 虚拟按钮实际上是不可见的 视频部分取代了按钮所在的位置 我想做这个 但还没有找到方法 android theme android style Theme NoTi
  • Boost 测试错误:main 已定义

    我有一个Visual Studio我想做一些单元测试的项目Boost Test 我有 2 个文件 File 1 define BOOST TEST MODULE FileX include