簡體   English   中英

在Ubuntu 12.04上設置Google Test以在Eclipse中運行C / C ++ Test Runner插件

[英]Setting Up Google Test to Run through C/C++ Test Runner Plug-In in Eclipse on Ubuntu 12.04

這是我嘗試過的:

在項目屬性中,我在libaries選項卡下包含了libgtest_main.a和libgtest.a。

在C ++ Unit選項卡下的運行配置中,我已將C / C ++測試設置為Google Tests Runner。

在運行配置中,在主選項卡下,C / C ++應用程序被設置為在項目構建期間創建的二進制文件。

我已經創建了一個測試文件夾作為我項目的一部分,並在那里編寫了我的測試。

這是我的代碼:

#include "../src/agent.h"
#include "../src/agent.cpp"
#include "gtest/gtest.h"

TEST(AgentTest, voidConstructorWorksProperly) {
Agent testAgent = Agent();
ASSERT_EQ(0, testAgent.getBrain());
}


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

}

我在TEST函數上遇到語法錯誤,並且在InitGoogleTest和RUN_ALL_TESTS上出現“無法解析”。

希望有人可以提供幫助 - 我已經在這里工作了好幾個小時,看起來很簡單,我錯過了。

我遇到了類似的問題並解決了運行此腳本的問題

       ./scripts/fuse_gtest_files.py . /yourprojectdir/

它出現在你安裝谷歌測試框架的地方(即/tmp/gtest-1.5.0)

我不知道它是否是最好的解決方案,但它對我有用。

我最近遇到過類似的問題。

首先擺脫語法錯誤和“無法解決”問題我已經改變了Eclipse中C ++索引器的首選項 - 它只是更改了一個設置,點擊Apply然后返回到原始設置然后點擊確定。

接下來,如果在eclipse中運行測試。 請注意,您需要將運行配置設置為具有運行測試的main函數的二進制文件(由您提供)。 可能如果您將測試作為已經具有入口點的其他項目的一部分,然后您已將其設置為二進制,那么就不會進行測試。 由於您無法使用兩個主要功能構建項目,因此必須對源文件進行一些過濾,以便為主應用程序提供獨立的構建配置,而另一個用於測試。 不幸的是我已經做到了。

這篇博文可能對您有所幫助:

http://codetrips.blogspot.com/search/label/gtest

他們在這個話題上給了我很多幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM