- 博客(8)
- 收藏
- 关注
原创 基于GoogleTest的测试框架打造
gTest提供了很多功能方便了单元测试,但是有时候我们需要 测试代码和测试数据分离,便于维护测试数据。或者需要用多组用例对同一个测试代码测试,尽管可以用gtest的参数化的方法达到目的,但是参数化最多只能提供50组用例,数量有限制。所以,有些情况我们需要打造自己的测试框架。首先研究gtest源码 ::testing::internal::MakeAndRegisterTestInfo( \ #test_suite_name,
2020-06-10 14:10:28 209
原创 GoogleTest源码研究--如何获取输出结果信息
gtest的输出结果,要么是输出到控制台,要么输出到文件,但是有时候我们需要直接从程序返回输出信息,而不是从文件里读,这里通过借助gtest留给我们的拓展可以实现。 首先看信息输出到xml文件是如何实现的: GTEST_API_ int main(int argc, char **argv) { printf("Running main() from %s\n", __FILE__); testing::InitGoogleTest(&argc, argv); retur.
2020-05-22 17:29:59 2866
原创 《Windows核心编程》笔记
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加粗:Ctrl/Command + B斜体:Ctrl/Command + I标题:Ctrl/Command + S
2023-06-23 18:03:49 131
原创 一种模块内部获取模块的完整路径的方法
最近有个需要,一个DLL被外部调用,但是DLL内部需要知道DLL所在的路径,网上找到了一种很奇妙的方法,记录之:HMODULE ModuleFromAddress( PVOID pv ){ MEMORY_BASIC_INFORMATION mbi; if(::VirtualQuery(pv, &mbi, sizeof(mbi)) != 0) { return (HMODULE)mbi.AllocationBase; } else { return NULL; }}得
2020-07-25 16:18:32 268
原创 用cmake构建能编译汇编语言的VS工程
用cmake构建能编译汇编的工程,网上多半都是说在CMakeLists中加上enable_language(ASM)但是VS工程中,这个不管用,因为VS用的是MASM。因此,只需要改成加上如下语句就可以enable_language(ASM_MASM)
2020-07-03 16:45:44 2516
原创 优雅地使用GoogleTest处理函数接口的多用例测试
对于一般的多用例测试的简化形式,网上已经有资料,用到的是gtest的参数化方法,简要说明如下:class IsPrimeParamTest : public::testing::TestWithParam<int>{};在测试case里面,则是:TEST_P(IsPrimeParamTest, HandleTrueReturn){ int n = GetPar...
2020-04-30 16:44:37 556
转载 使用ThreadSanitizer线程检查工具
ThreadSanitizer又叫TSan,是一个检查线程Data Race的C/C++工具。它集成在新版的gcc和clang中,通过编译时加-fsanitize=thread,可以在运行时检测出Data Race的问题。ThreadSanitizer官网:https://code.google.com/p/thread-sanitizerData RaceData Race是指多个线程在...
2020-04-30 15:34:37 893 1
原创 如何写一个完善的singleton模式
struct BiTree{ BiTree *_father; BiTree *_lChild; int _data; BiTree *_rchild; BiTree(int data) : _data(data), _father(nullptr), _lChild(nullptr), _rchild(nullptr) { }};...
2020-03-06 11:41:35 67
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人