使用Google Test的一个简单例子(接合上一篇看)
来源:互联网 发布:历年进出口数据查询 编辑:程序博客网 时间:2024/06/05 17:18
0. 引子
本例是从 gtest-1.5.0 自带的 sample 中的 sample1 改写而来,笔者只添加了一个求 n 的阶层的函数,如下。
void Factorial(int n, int & result )
{
result = 1;
for (int i = 1; i <= n; i++)
result *= i;
}
目的是想测试像这样将返回值放在参数中返回的函数。
对于该函数,添加的单元测试代码如下。
TEST (FactorialTest , Mytest )
{
int result = 0;
Factorial (5, result);
EXPECT_EQ (120, result);
}
1. 要测试的代码
要测试的代码 (Sample.h) 代码如下。
要测试的代码 (Sample.cpp) 代码如下。
2. 单元测试代码
单元测试代码 (test.cpp) 如下。
3. 编译
3.1 Linux 平台
makefile 文件,请参考 “ Linux平台如何编译使用Google test写的单元测试? ”
3.2 Win32 平台
Make.bat 文件,请参考 “ Win32 平台如何编译使用 Google test 编 写的单元测试? ” 。
4. 运行结果
4.1 Linux 平台
运行结果如下。
# ./test
Running main() from gtest_main.cc
[==========] Running 7 tests from 2 test cases.
[----------] Global test environment set-up.
[----------] 4 tests from FactorialTest
[ RUN ] FactorialTest.Negative
[ OK ] FactorialTest.Negative (0 ms)
[ RUN ] FactorialTest.Zero
[ OK ] FactorialTest.Zero (0 ms)
[ RUN ] FactorialTest.Positive
[ OK ] FactorialTest.Positive (0 ms)
[ RUN ] FactorialTest.Mytest
[ OK ] FactorialTest.Mytest (0 ms)
[----------] 4 tests from FactorialTest (0 ms total)
[----------] 3 tests from IsPrimeTest
[ RUN ] IsPrimeTest.Negative
[ OK ] IsPrimeTest.Negative (0 ms)
[ RUN ] IsPrimeTest.Trivial
[ OK ] IsPrimeTest.Trivial (0 ms)
[ RUN ] IsPrimeTest.Positive
[ OK ] IsPrimeTest.Positive (0 ms)
[----------] 3 tests from IsPrimeTest (0 ms total)
[----------] Global test environment tear-down
[==========] 7 tests from 2 test cases ran. (0 ms total)
[ PASSED ] 7 tests.
7 个测试均通过。
4.2 Win32 平台
运行结果如下。
Technorati 标签: 单元测试;google test
网址:http://blog.csdn.net/livelylittlefish/article/details/6148171
- 使用Google Test的一个简单例子(接合上一篇看)
- 使用Google Test的一个简单例子
- 使用Google Test的一个简单例子
- 使用Google Test的一个简单例子
- google test在MAC上的使用简单教程
- Google Test的简单使用
- Android上使用Google Maps最最简单的例子
- 一个简单的例子,看明白this
- 地图入门(一):Android上使用Google Maps加标注的最最简单的例子
- google test的使用
- 很好的vi教程(接合例子)
- 看JAVA序列化的性能 -- 一个简单的例子
- 如何编译google test的例子?
- Canlendar类使用的一个简单例子
- Canlendar类使用的一个简单例子
- 一个使用多媒体定时器的简单例子
- 关于ColorBox使用的一个简单例子
- Apache Lucence 使用的一个简单例子
- SEO之http状态代码(错误代码)各代表什么意思?
- 熔断器Hystrix的原理与使用
- node笔记---node基础的一个小实例
- qt清空数据库表数据保留表结构的一种方法
- 浏览器缓存机制剖析
- 使用Google Test的一个简单例子(接合上一篇看)
- vue快速入门知识点(一)
- 【iOS】Socket/TCP 通信 发送 NSString 字符串格式数据
- IOS关于发起本机地图导航
- ffmpeg mkv转mp4
- 二分查找算法的递归与非递归实现
- 解决ueditor图片上传的弹出窗口被遮盖问题
- 算法导论(implementation of quick sort)
- 如何获取Android手机连接网络的当前局域网IP