我现在正在实施 gtest,它给了我一个错误:main 之前在这里定义。
这是 utest.cpp
// Bring in my package's API, which is what I'm testing
#include "../src/test.cpp"
// Bring in gtest
#include <gtest/gtest.h>
// Declare a test
TEST(TestSuite, testCase1)
{
EXPECT_EQ(5,getX(5));
}
// Run all the tests that were declared with TEST()
int main(int argc, char **argv){
testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}
这是我正在测试 test.cpp 的代码
#include "ros/ros.h"
#include "std_msgs/String.h"
#include <Project2Sample/R_ID.h>
#include <geometry_msgs/Twist.h>
#include <nav_msgs/Odometry.h>
#include <sensor_msgs/LaserScan.h>
#include <sstream>
#include "math.h"
int getX(int x)
{
return x;
}
int main(int argc, char **argv)
{
return 0;
}
test.cpp main 中没有任何内容,但实际代码在 main 中会有一些代码。
我没有用于 utest 和测试 cpp 文件的头文件
我试过
#ifndef UTEST_H
#define UTEST_H
并没有解决错误。