我应该使用哪个C++单元测试框架来运行涉及libcurl的测试

Which C++ unit test framework should I use to run tests that involve libcurl?

本文关键字:运行 libcurl 测试 框架 单元测试 C++ 我应该      更新时间:2023-10-16

我已经编写了使用libcURL从给定网页检索信息的代码。我想为这段代码写一个单元测试。我曾尝试使用cmake来完成此操作,但遇到了各种各样的问题。有没有其他框架可以让我更容易地完成这项工作?

以下是关于我一直与cmake有问题的详细信息:

之前,作为单元测试的一部分,我使用tinyweb向本地主机发送了一个测试网页。然后,我使用多个命令将值输入到代码中(这将从本地主机检索相关信息)并杀死tinyweb。整体结构与此类似:

CTest with multiple commands

我遇到了很多问题。一旦执行了启动tiny.exe的命令,ctest的下一行将不会运行,直到tiny.exe被杀死。

我以前尝试过使用批处理文件做类似的事情,但tiny.exe在毫无防备的时候被杀了。

为此,我建议使用gtest和gmock。首先,除非你控制了网站,否则你无法保证你请求的内容会存在。其次,即使网站确实存在,你也不能保证内容保持不变。

因此1)在本地主机上设置自己的站点。你可以使用gtest。2) 然后你可以使用gmock来模拟你今天期望的网站内容。

3) 你也可以使用谷歌模拟DNS故障,连接问题,等等。但现在,开始简单。