青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 26, comments - 2, trackbacks - 0, articles - 0
  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

gtest的一個(gè)簡單擴(kuò)展

Posted on 2008-08-27 23:14 小夜 閱讀(2331) 評論(0)  編輯 收藏 引用 所屬分類: [07] 單元測試[51] C&C++

看了gtest的一個(gè)simple,其中有測試運(yùn)行時(shí)間的方法,但使用起來稍微負(fù)責(zé),因此做了一個(gè)簡單的擴(kuò)展。

擴(kuò)展內(nèi)容:
1. TEST_T(test_case_name, test_name),用于定義運(yùn)行時(shí)間測試用例。
2. TEST_T_SHOWTIME(),打開打印測試用例運(yùn)行時(shí)間打印開關(guān)。
3. EXCEPT_TIME(second)和ASSERT_TIME(second),斷言,second為double類型,測試運(yùn)行時(shí)間是否小于second。

使用說明:
向正常使用一樣,只是在需要時(shí)間測試時(shí)include “gtest_e.h”即可,當(dāng)然也得把相應(yīng)的庫鏈接到執(zhí)行文件中。

具體實(shí)現(xiàn):
源文件gtest_e.h----

/**
 * gtest_e.h
 
*/


#ifndef GTEST_E_H_
#define GTEST_E_H_

#include 
"gtest_time.h"

#define TEST_T(test_case_name, test_name)\
    GTEST_TEST(TIME_##test_case_name, test_name, ::TimeTest)

#define TEST_T_SHOWTIME() TimeTest_setShowFlag(1)

#define ASSERT_TIME(time) if(TimeTest_setTimePoint() - time > 0) \
    FAIL() 
<< "Time: running " << TimeTest_getTime() << "(s) > " << time << "(s)"

#define EXCEPT_TIME(time) if(TimeTest_setTimePoint() - time > 0) \
    ADD_FAILURE() 
<< "Time: running " << TimeTest_getTime() << "(s) > " << time << "(s)"

#endif /* GTEST_E_H_ */
源文件gtest_time.h----
/**
 * gtest_time.h
 
*/


#ifndef GTEST_TIME_H_
#define GTEST_TIME_H_

#include 
<gtest/gtest.h>

class TimeTest: public testing::Test
{
public:
    inline 
void TimeTest_setShowFlag(int flag)
    
{
        show_time_ 
= flag;
    }


    inline 
double TimeTest_getTime()
    
{
        
return end_time_ - start_time_;
    }


    
double TimeTest_setTimePoint();

protected:
    
double start_time_;
    
double end_time_;
    
int show_time_;

    
virtual void SetUp();
    
virtual void TearDown();
}
;

#endif /* GTEST_TIME_H_ */
源文件gtest_time.cpp----
/**
 * gtest_time.cpp
 
*/


#include 
<iostream>
#include 
"gtest_time.h"

using namespace std;

#if defined(WIN32)
#include 
<sys/timeb.h>
double now()
{
    
struct _timeb current;
    _ftime(
&current);
    
return (((double) current.time) + (1.0 * current.millitm) * 0.000001);
}

#else
double now()
{
    
struct timeval current;
    gettimeofday(
&current, NULL);
    
return (((double) current.tv_sec) + 1.0e-6 * ((double) current.tv_usec));
}

#endif

void TimeTest::SetUp()
{
    start_time_ 
= now();
    end_time_ 
= 0;
    TimeTest_setShowFlag(
0);
}


void TimeTest::TearDown()
{
    
if (show_time_)
    
{
        
double used_time = TimeTest_setTimePoint();
        cout 
<< "[   TIME   ] used time: " << used_time << "(s)"
                
<< endl;
    }

}


double TimeTest::TimeTest_setTimePoint()
{
    end_time_ 
= now();
    
return TimeTest_getTime();
}


以上內(nèi)容只是一個(gè)簡單的實(shí)現(xiàn),沒有過多的測試,且時(shí)間精度不夠,誤差較大。
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲高清不卡| 国产精品亚洲综合| 久久久久五月天| 欧美日韩在线播放三区| 欧美视频手机在线| 久久深夜福利免费观看| 欧美.com| 亚洲电影欧美电影有声小说| 久久久精彩视频| 亚洲色图自拍| 欧美日韩亚洲视频一区| 亚洲国产精品电影| 美女亚洲精品| 久久久天天操| 亚洲激情网址| 亚洲二区免费| 蜜桃久久精品乱码一区二区| 一区免费视频| 欧美大片在线看| 免费亚洲一区| 亚洲六月丁香色婷婷综合久久| 麻豆久久精品| 国产精品s色| 极品日韩久久| 久久婷婷国产综合尤物精品 | 亚洲视频日本| 性色一区二区| 亚洲国产一区二区视频| 久久精品盗摄| 国产精品你懂得| 午夜视黄欧洲亚洲| 欧美一级电影久久| 在线观看久久av| 亚洲国产毛片完整版| 欧美黑人多人双交| 亚洲自拍偷拍麻豆| 午夜在线视频观看日韩17c| 国内免费精品永久在线视频| 欧美激情第一页xxx| 欧美视频一区二区在线观看| 午夜日本精品| 久色成人在线| 亚洲综合精品四区| 久久久五月婷婷| 欧美激情按摩| 性欧美8khd高清极品| 久久精品国产精品| 亚洲另类自拍| 久久成人18免费网站| 亚洲伦理网站| 国产精品尤物| 亚洲小说春色综合另类电影| 欧美一区二区三区视频免费| 亚洲另类春色国产| 欧美在线一级va免费观看| 99国产精品| 亚洲三级性片| 在线一区观看| 久久久精品日韩欧美| 亚洲特色特黄| 裸体女人亚洲精品一区| 亚洲欧美日韩中文在线制服| 久久精品一区二区三区中文字幕| 在线视频欧美日韩| 久久夜色精品| 国产毛片一区| 亚洲国产日日夜夜| 国产亚洲午夜| 亚洲天堂视频在线观看| 亚洲韩国青草视频| 亚洲天堂网在线观看| 久久青草久久| 亚洲私拍自拍| 欧美一区二区日韩一区二区| 一区二区激情视频| 亚洲午夜高清视频| 欧美一区二区三区久久精品茉莉花 | 一区二区三区视频在线观看| 亚洲欧美欧美一区二区三区| 夜夜爽av福利精品导航| 久久激情视频久久| 亚洲理论在线| 亚洲字幕一区二区| 国产嫩草影院久久久久| 精品91在线| 午夜精品久久久久久久久| 美女国内精品自产拍在线播放| 国产精品国产三级国产普通话99 | 欧美视频在线观看一区| av成人动漫| 亚洲午夜av电影| 久久大综合网| 亚洲美女av电影| 亚洲精品美女在线| 中日韩美女免费视频网站在线观看| 国产精品sss| 欧美激情精品久久久久久黑人| 亚洲久久一区二区| 国产区日韩欧美| 亚洲福利国产精品| 久久国产精品99精品国产| 欧美二区在线看| 国产精品推荐精品| 亚洲国产综合在线| 国模精品一区二区三区色天香| 亚洲精品系列| 好吊视频一区二区三区四区| 日韩亚洲欧美成人一区| 在线看一区二区| 性久久久久久久久久久久| 亚洲视频成人| 欧美激情第3页| 男女激情视频一区| 国产农村妇女精品一二区| 亚洲人午夜精品免费| 国内精品久久久久久久影视麻豆 | 欧美日韩国产在线看| 欧美在线视频一区二区| 欧美日韩123| 久久精品国产久精国产一老狼| 国产综合av| 亚洲一级在线观看| 99在线精品视频| 久久人人97超碰国产公开结果| 一区二区三区视频观看| 欧美在线观看视频| 欧美诱惑福利视频| 国产精品高潮呻吟久久| 日韩视频一区二区三区| 99精品久久| 欧美日韩国产麻豆| 亚洲精品美女| 91久久午夜| 欧美gay视频激情| 欧美成人一区二区三区在线观看 | 卡一卡二国产精品| 国产伦精品一区二区三区在线观看| 日韩一级不卡| 亚洲自拍偷拍色片视频| 国产精品久久久久久久久免费桃花| 99精品国产高清一区二区| 一区二区三区精密机械公司 | 国产一区自拍视频| 午夜精品三级视频福利| 午夜精品视频在线观看一区二区| 国产精品久久久一区麻豆最新章节 | 久久精品国产免费| 国产专区一区| 久久综合久久综合这里只有精品 | 中文精品视频| 欧美日韩午夜剧场| 亚洲天堂成人在线观看| 久久精品动漫| 亚洲国产老妈| 亚洲深夜福利| 久久青草久久| 亚洲精品免费在线| 亚洲一区中文字幕在线观看| 国产麻豆精品在线观看| 久久精品国产第一区二区三区| 亚洲第一黄色网| 亚洲午夜精品久久久久久浪潮 | 国产欧美一区二区精品性色| 久久爱www久久做| 欧美国产视频日韩| 欧美丰满高潮xxxx喷水动漫| 久热精品视频在线观看| 欧美—级在线免费片| 美日韩免费视频| 国产精品手机在线| 午夜欧美理论片| 欧美在线观看视频一区二区三区| 久久国产精品久久久久久久久久| 国产精品国产亚洲精品看不卡15| 在线欧美三区| 中文日韩在线视频| 亚洲乱码精品一二三四区日韩在线| 日韩一区二区福利| 欧美性片在线观看| 久久久久久久综合色一本| 日韩一本二本av| 老司机午夜精品视频| 亚洲午夜激情网页| 亚洲国产成人一区| 国产精品www网站| 久久欧美中文字幕| 亚洲一级片在线观看| 亚洲国产成人久久综合一区| 先锋影音网一区二区| 亚洲精品日本| 国际精品欧美精品| 欧美区日韩区| 嫩模写真一区二区三区三州| 欧美一二三区精品| 一区二区三区视频观看| 亚洲精品资源| 亚洲高清免费| 欧美电影在线播放| 久久伊人免费视频| 羞羞答答国产精品www一本 |