博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2010年11月30日

摘要: mockcpp & testngpp在2010.7~11月的改进mockcpp:1、支持多种的xUnit测试框架。(支持testngpp、gtest、CppUnit、CppUTest)2、支持spy约束关键字。(用于窥探给某个被mock函数传入的入参)3、支持check约束关键字。(以函数,或者仿函数对象来自定义参数检查规则)4、支持Windows 7下的ApiHook功能。(原来的Api... 阅读全文

posted @ 2010-11-30 21:08 sinojelly 阅读(834) 评论(0) 推荐(0) 编辑

2010年11月26日

摘要: HI,各位朋友好 ~ 感谢各位认识和不认识的朋友对我的支持和鼓励,欢迎共同交流敏捷、软件相关话题!同时,也欢迎各位来投我一票啊,呵呵,谢谢各位!我会搜集历史以来写得比较好的文章推荐到参赛主页上,表示感谢,呵呵!我现在在参加51CTO和新浪主办的“2010中国十大杰出IT博客大赛”,希望能进入50强:)欢迎来我的博客看看,并投出您宝贵的一票!投票无需登录,直接点击即可,谢谢啦!http://2010... 阅读全文

posted @ 2010-11-26 20:33 sinojelly 阅读(257) 评论(0) 推荐(0) 编辑

2010年11月25日

摘要: mockcpp使用方法简明指导mock工具介绍mock工具的作用是指定函数的行为(模拟函数的行为)。可以对入参进行校验,对出参进行设定,还可以指定函数的返回值。几个相关概念:(1)mock规范:每个MOCKER(function)开始,跟一系列的.stubs、.with、.will等的内容的整体,称为一个mock规范。(2)核心关键字:指stubs/defaults/expects/before/... 阅读全文

posted @ 2010-11-25 02:42 sinojelly 阅读(5407) 评论(0) 推荐(0) 编辑

摘要: 相关汇编知识call 指令 它会自动进行ret addr的压栈。ret n 指令 它会自动退栈,用于stdcall的时候。(与默认的cdecl相比,不用每个调用处都产生一条调整栈的指令add esp,n)ret之后的n只能是立即数,不能是寄存器。ret 指令(包括ret 和 ret n) 它会把栈顶的ret addr作为下一步要执行的位置,从而跳转到返回地址处。参数传递 这里考虑的是intel架构... 阅读全文

posted @ 2010-11-25 02:16 sinojelly 阅读(2607) 评论(0) 推荐(0) 编辑

2010年11月24日

摘要: cdecl和stdcall调用约定的汇编代码对比stdcall方式:--- d:\projects\lab\call_type\call_type.cpp ------------------------------------int __stdcall add(int a, int b){002613A0 push ebp 002613A1 mov ebp,esp 002613A3 sub es... 阅读全文

posted @ 2010-11-24 20:51 sinojelly 阅读(383) 评论(0) 推荐(0) 编辑

摘要: cdecl和stdcall调用约定的汇编代码对比--- d:\projects\lab\call_type\call_type.cpp ------------------------------------#include <stdio.h>int __stdcall add(int a, int b){013D13B0 push ebp 013D13B1 mov ebp,esp 0... 阅读全文

posted @ 2010-11-24 20:41 sinojelly 阅读(479) 评论(0) 推荐(0) 编辑

摘要: mockcpp简单使用指引mock工具介绍mock工具的作用是指定函数的行为(模拟函数的行为)。可以对入参进行校验,对出参进行设定,还可以指定函数的返回值。上面代码中带“/”或者“|”的表示在该位置可能有多种选择;带中括号的表示是可选的。几个相关概念:(1)mock规范:每个MOCKER(function)开始,跟一系列的.stubs、.with、.will等的内容的整体,称为一个mock规范。(... 阅读全文

posted @ 2010-11-24 19:42 sinojelly 阅读(12990) 评论(3) 推荐(1) 编辑

2010年11月15日

摘要: cpp-ut-project是我经过一段时间的C/C++ TDD开发,尝试了多种测试框架、mock工具之后,精选了我最喜欢的工具组成的TDD开发套件,同时通过lua脚本实现了增加类、测试文件等功能,最大限度减轻人的负担,让事情变得简单,欢迎感兴趣的同行朋友试用交流。它集成了如下几个工具testngpp 最出色的C/C++测试框架。(支持用例继承、sandbox等高级功能,支持内存泄露检查)mock... 阅读全文

posted @ 2010-11-15 02:01 sinojelly 阅读(1466) 评论(0) 推荐(0) 编辑

2010年11月3日

摘要: 前言今天,又定位了一个令人懊恼的C++内存使用异常问题,最终结果,竟然是减少接口类的方法后,为了避免编译错误,顺手添加的强制类型转换导致的。 对于这样的问题,我们碰到很多很多次了。没有这样的问题,我们就不会有那么多的攻关,那么多的熬夜,进度也许不再那么捉摸不透...... 我们有很多的抱怨,用的C/C++语言太底层,使用高级语言C#/JAVA等就不会有头痛的内存问题了,而且新的语言在很多方面提高了... 阅读全文

posted @ 2010-11-03 00:44 sinojelly 阅读(6523) 评论(4) 推荐(2) 编辑

2010年10月28日

摘要: 中文版本获取方法:(只有前三章内容) http://book.51cto.com/art/200912/168058.htm 作者: Robert C.Martin 又称 Bob大叔 敏捷软件开发的权威人士 内容提要 软件质量,不但依赖于架构及项目管理,而且与代码质量紧密相关。这一点,无论是敏捷开发流派还是传统开发流派,都不得不承认。本书提出一种观念:代码质量与其整洁度成正比。干净的代码,既在... 阅读全文

posted @ 2010-10-28 01:14 sinojelly 阅读(1147) 评论(3) 推荐(0) 编辑