溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Qt配置使用Google Test

發(fā)布時(shí)間:2020-05-31 10:52:47 來源:網(wǎng)絡(luò) 閱讀:4454 作者:chengarm 欄目:編程語言

        Google Test(簡稱gtest)是一個(gè)比較出名的單元測試工具,用來進(jìn)行單元模塊的測試很方便。查了一下網(wǎng)上的博客,發(fā)現(xiàn)多數(shù)講的都是gtest在vs上的配置,并沒有在Qt上的配置,本篇主要講解如何配置Qt Creator使用的gtest環(huán)境。


一、安裝下載

        這里就不多講,Qt安裝,百度一大把。這里需要從GitHub上下載gtest的源碼。


二、使用Qt Creator進(jìn)行編譯

        把代碼下載完成以后,gtest代碼目錄如下

Qt配置使用Google Test

        這里我們只需要使用googletest文件夾下的內(nèi)容,其他的暫時(shí)沒有使用,后續(xù)用到時(shí),再進(jìn)行分析。


在googletest文件夾下新建一個(gè)gtest.pro文件,主要包括gtest的頭文件和源文件

QT	-= gui

TARGET = gtest
TEMPLATE = lib
CONFIG = staticlib
INCLUDEPATH += ./include

#DEFINES += QT_DEPRECATED_WARNINGS

SOURCES += src/gtest.cc	\
		src/gtest_main.cc \
		src/gtest-all.cc	\
		src/gtest-death-test.cc	\
		src/gtest-filepath.cc	\
                src/gtest-port.cc	\
		src/gtest-printers.cc	\
		src/gtest-test-part.cc	\
		src/gtest-typed-test.cc


        然后使用Qt Creator打開gtest.pro。然后進(jìn)行編譯,最后生成的gtest.lib就是我們需要的庫文件



三、使用gtest

        新建一個(gè)測試工程,將gtest.lib和include文件夾拷貝到工程目錄下。

    Qt配置使用Google Test


gtest_test.pro

TEMPLATE = app
CONFIG += console c++11
CONFIG -= app_bundle
CONFIG -= qt

INCLUDEPATH += ./include

SOURCES += main.cpp

LIBS += -L$$PWD/lib/ -lgtest


main.cpp

#include <iostream>
#include "gtest/gtest.h"
using namespace std;


int Factorial(int n) {
    int result = 1;
    for (int i = 1; i <= n; i++) {
        result *= i;
    }

    return result;
}

TEST(Factorial, Empty)
{
    EXPECT_EQ(1, Factorial(1));
}

int main(int argc, char* argv[])
{
    testing::InitGoogleTest(&argc,argv);
    return RUN_ALL_TESTS();
}


運(yùn)行結(jié)果如圖

Qt配置使用Google Test



需要注意的是,debug的話,會出現(xiàn)錯(cuò)誤,release則沒有問題。


運(yùn)行結(jié)果如下。

Qt配置使用Google Test



向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI