使用 GTest 用 C++ 编写基本测试
起点:我们假设您有一个 基本的 ament_cmake 软件包 已经设置好了,你想添加一些测试。
在本教程中,我们将使用 测试.
软件包设置
源代码
我们将在一个名为 test/tutorial_test.cpp
#include <gtest/gtest.h>;
测试(包名, a_first_test)
{
ASSERT_EQ(4, 2 + 2);
}
int 主要(int 参数, 烧焦 ** 参数)
{
测试::InitGoogleTest(及样品;参数, 参数);
返回 运行所有测试();
}
package.xml
在 package.xml
<;测试依赖>;ament_cmake_gtest</测试依赖>;
CMakeLists.txt
如果(构建测试)
查找软件包(ament_cmake_gtest 要求)
添加测试(${项目名称}教程测试 test/tutorial_test.cpp)
目标包含目录(${项目名称}教程测试 公众
$<;BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>;
$<;INSTALL_INTERFACE:include>;
)
目标链接库(${项目名称}教程测试 本地图书馆名称)
endif()
测试代码封装在 if/endif
块,以尽可能避免构建测试。 添加测试
功能与 添加可执行
因此您需要调用 目标包含目录
, ament_target_dependencies
和 目标链接库
和平常一样。
运行测试
参见 如何从命令行运行测试的教程 运行测试和检查测试结果的更多信息。