摘要: “死亡测试”名字比较恐怖,这里的“死亡”指的的是程序的崩溃。通常在测试过程中,我们需要考虑各种各样的输入,有的输入可能直接导致程序崩溃,这时我们就需要检查程序是否按照预期的方式挂掉,这也就是所谓的“死亡测试”。gtest的死亡测试能做到在一个安全的环境下执行崩溃的测试案例,同时又对崩溃结果进行验证。 阅读全文
posted @ 2010-04-15 17:29 清豪 阅读(840) 评论(0) 推荐(0) 编辑
摘要: 在设计测试案例时,经常需要考虑给被测函数传入不同的值的情况。我们之前的做法通常是写一个通用方法,然后编写在测试案例调用它。即使使用了通用方法,这样的工作也是有很多重复性的,程序员都懒,都希望能够少写代码,多复用代码。Google的程序员也一样,他们考虑到了这个问题,并且提供了一个灵活的参数化测试的方案。 阅读全文
posted @ 2010-04-15 17:28 清豪 阅读(832) 评论(0) 推荐(0) 编辑
摘要: gtest提供了多种事件机制,非常方便我们在案例之前或之后做一些操作。总结一下gtest的事件一共有3种: 1. 全局的,所有案例执行前后。 2. TestSuite级别的,在某一批案例中第一个案例前,最后一个案例执行后。 3. TestCae级别的,每个TestCase前后。 阅读全文
posted @ 2010-04-15 17:26 清豪 阅读(643) 评论(0) 推荐(0) 编辑
摘要: 这篇文章主要总结gtest中的所有断言相关的宏。 gtest中,断言的宏可以理解为分为两类,一类是ASSERT系列,一类是EXPECT系列。一个直观的解释就是: 1. ASSERT_* 系列的断言,当检查点失败时,退出当前函数(注意:并非退出当前案例)。 2. EXPECT_* 系列的断言,当检查点失败时,继续往下执行。 阅读全文
posted @ 2010-04-15 17:24 清豪 阅读(1601) 评论(0) 推荐(0) 编辑
摘要: 本篇将介绍一些gtest的基本使用,包括下载,安装,编译,建立我们第一个测试Demo工程,以及编写一个最简单的测试案例。 阅读全文
posted @ 2010-04-15 17:22 清豪 阅读(1108) 评论(0) 推荐(0) 编辑
摘要: Google Test (gtest)是Google的开源C++测试框架,官方已经有如此完备的文档了,为什么我还要写呢?一方面是自己记记笔记,好记性不如烂笔头,以后自己想查查一些用法也可以直接在这里查到,一方面是对于不想去看一大堆英文文档的朋友,在我这里可以快速的找到gtest相关的内容。 阅读全文
posted @ 2010-04-15 17:08 清豪 阅读(542) 评论(0) 推荐(0) 编辑
摘要: 之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简单?)。我们尽可以把它看成是C++的基本数据类型。 好了,进入正题………... 阅读全文
posted @ 2010-04-09 09:48 清豪 阅读(363) 评论(0) 推荐(0) 编辑
摘要: 在vc6.0中,localtime只能转换1970到2038年的时间范围,在vc2005中,被扩展到了1970年到3000年,但如果想要转换更大的时间范围怎么办?比如SQLServer的datetime类型就可以表示1753年到9999年的范围,用localtime肯定是不行的。经过网上大量搜索及个人研究,终于找到了一个方法,可以转换1601年到30827年的范围,够大了吧?由于本人水平有限,无法... 阅读全文
posted @ 2010-03-23 12:27 清豪 阅读(2015) 评论(0) 推荐(0) 编辑
摘要: 最近在做TDS协议解析,但国内很少有TDS的资料,特此转载从国外一个网站弄来的TDS资料,不是特别全,可能也有些乱(比如今天做的RPC包的解析,看了好久才看明白,有机会的话我把RPC解析贴出来,RPC还是很重要的,参数替换的语句都是在RPC包发送的。)文章来自:http://freetds.cvs.sourceforge.net/*checkout*/freetds/freetds/doc/tds... 阅读全文
posted @ 2010-03-16 18:35 清豪 阅读(17989) 评论(0) 推荐(2) 编辑
摘要: 最近在学习asp.net2.0,用到了vs2005,开始安装vs2005没什么,但是在网上查找vs2005bug甚多,需要安装sp1补丁,但是微软官网给出的sp1安装条件指出,硬盘空间至少要6.2g,安装时间大约要几个小时,看到这我很是吃惊啊!有点不信便到网上去查询,查询的结果果然如此,有些网友说他安装了一天还没有安装完啊!我想肯定有安装成功的,而且应该不用很长时间的,果然功夫不负有心人,终于找到... 阅读全文
posted @ 2010-03-15 23:05 清豪 阅读(1142) 评论(0) 推荐(0) 编辑