草庐IT

test_msg

全部标签

c++ - 测试 C++ 代码 : Using test libraries

我学习C++有一段时间了,但这是我第一次接触C++项目(宠物配置解析器库)。我正在使用GoogleC++TestingFramework来测试这个。但我不知道我这样做是否正确。目前,我已经剥离了这个Google测试库的一些部分并将其放入我的项目Test/googletest目录中。它工作正常,但我想知道我是否应该这样做。我在我的项目中包含了测试框架的源代码,它将与我的代码一起发布。这让我感到不舒服。我浏览了someC++projectsonGitHub,试图看看其他人如何处理这个问题。有些有自定义框架,大多数根本不测试代码就解决了整个问题。我想知道我是否做对了,或者我怎样才能采用一种测

c++ - BOOST_STATIC_ASSERT_MSG - 缺少错误信息

我在让BOOST_STATIC_ASSERT_MSG发出有意义的错误消息时遇到问题。我把它归结为:#includenamespaceStaticChecks{BOOST_STATIC_ASSERT_MSG(false,"Whereismyerrormessage?");}指定的错误信息无处可见。相反,我得到以下信息:c:\tryit>x86_64-w64-mingw32-g++-O0-g-m64-Wall-IC:\boost_1_50_0-IC:\MinGW-W64\msys\includecompiletimechecks.cpp-c-ocompiletimechecks.cpp.o

c++ - 如何通过命令行运行 Google Test?

我有一个启动并运行GoogleTest的示例项目。我有一个简单的测试类,如下所示:#includeTEST(FirstTest,TestNumberOne){EXPECT_NE(2,1);}这是在我电脑上的目录/home/dave/Desktop/sandbox/black-test/src/code/Tester.cpp我在使用Ubuntu的Eclipse中工作。测试类在Eclipse中运行良好(右键单击,以C++运行)。但是我找不到关于如何通过命令提示符运行的文档?其次,大多数为C++进行单元测试的人是将他们的测试项目与生产代码分开还是耦合(就像大多数Java项目一样)?

c++ - GCC Address Sanitizer - 将库函数列入黑名单(特别是 boost::test)

我所有的单元测试代码都基于boost::test。我刚刚尝试了GCCAddresssanitizer,它报告了boost::test的一些问题:==25309==ERROR:AddressSanitizer:heap-use-after-freeonaddress0xf5801344atpc0x8259412bp0xff9966c8sp0xff9966bcREADofsize4at0xf5801344threadT0#00x8259411inboost::unit_test::framework::run(unsignedlong,bool)../common/lib/boost/bo

maven无法解决org.junit.test

我正在尝试通过命令行中的Groovy编译和运行单元测试。项目中的包装结构不遵循命名约定-这是我目前无法更改的。这些课程被组织为:src/abc/def/SomeClass.groovysrc/abc/tests/def/TestSomeClass.groovy当我跑步时mvntest,消息是:无法解析类org.junit.test和无法解析类org.junit.assert在课堂里src/abc/tests/def/TestSomeClass.groovy.我的pom是:4.0.0org.codehaus.mojomy-project1.0org.codehaus.gmavenplusgmav

c++ - Boost::Test——Main() 的生成?

我对设置boost测试库有点困惑。这是我的代码:#include"stdafx.h"#defineBOOST_TEST_DYN_LINK#defineBOOST_TEST_MODULEpevUnitTest#includeBOOST_AUTO_TEST_CASE(TesterTest){BOOST_CHECK(true);}我的编译器生成非常有用的错误消息:1>MSVCRTD.lib(wcrtexe.obj):errorLNK2019:unresolvedexternalsymbol_wmainreferencedinfunction___tmainCRTStartup1>C:\Use

c++ - boost::test 中是否有可以返回错误值的函数?

BoostTestLibrary是一个非常有用的单元测试框架。但是,我感到不舒服的一件事是,在单元测试期间,如果发生错误,它会通知用户而不是程序本身。让我以BOOST_CHECK为例来阐明我的观点:i=3;j=4;BOOST_CHECK(i==j);上面的测试用例会失败。因此,检查细节以找出此测试失败的原因将非常有趣。在这种情况下,如果程序知道单元测试失败,打印一些变量或执行更复杂的操作(例如将文件写入磁盘)将是必要的。但是,BOOST_CHECK不会返回一个值来表示测试是否成功。一个完美的函数应该是这样的:i=3;j=4;if(Enhanced_BOOST_CHECK(i==j)==

c++ - 如何在 Google Test 中为一个夹具运行多个测试用例?

假设我有一个名为ProfileTest的GoogleTestfixture继承自::testing::TestWithParams创建一个解析器:classProfileTest:public::testing::TestWithParam>{public:QStringgetName(){returnQFileInfo(*m_file).fileName();}protected:voidSetUp(){m_profile=newProfile();m_file=newQFile(std::get(GetParam()).c_str());m_file->open(QIODevice

c# - 为什么 if( !A && !B ) 不能优化为单个 TEST 指令?

if(!A&&!B)似乎应该编译为moveax,dwordptr[esp+A_offset]testeax,dwordptr[esp+B_offset]jne~~~~~~~~~~编译器实际生成moveax,dwordptr[esp+A_offset]testeax,eaxjne~~~~~~~~~~moveax,dwordptr[esp+B_offset]testeax,eaxjne~~~~~~~~~~看这里转储8B45F8moveax,dwordptr[b]837DFC00cmpdwordptr[a],07504jnemain+32h(0A71072h)85C0testeax,eax7

c++ - Google Test with CLion 未运行测试

我正在尝试使用googletest和CLion运行一个简单的测试。我认为我已经正确设置了cmake,并且能够“运行测试”。当我这样做时,它说没有找到测试。有任何想法吗?CMakeLists.txtcmake_minimum_required(VERSION3.7)project(expirement)find_package(ThreadsREQUIRED)set(CMAKE_CXX_STANDARD14)set(SOURCE_FILESmain.cppgetstring.cpptests.cpp)include(${CMAKE_ROOT}/Modules/ExternalProjec