草庐IT

test_compare

全部标签

C++11 static assert for equality comparable type?

如何static_assert模板类型是C++11中的EqualityComparable概念? 最佳答案 您可以使用以下类型特征:#includetemplatestructis_equality_comparable:std::false_type{};templatestructis_equality_comparable()==std::declval(),(void)0)>::type>:std::true_type{};您将以这种方式进行测试:structX{};structY{};booloperator==(Xcon

c++ - Catch.hpp 单元测试 : How to dynamically create test cases?

我正在使用CATCHv1.1build14对我的C++代码进行单元测试。作为测试的一部分,我想检查代码中几个模块的输出。没有固定数量的模块;可以随时添加更多模块。但是,测试每个模块的代码是相同的。因此,我认为将测试代码放在for循环中是最理想的。事实上,使用catch.hpp,我已经验证了我可以在测试用例中动态创建部分,其中每个部分对应一个模块。我可以通过将SECTION宏包含在for循环中来做到这一点,例如:#include"catch.hpp"#include#include#include"myHeader.h"TEST_CASE("Moduletesting","[module

c++ - 如何使用 boost::unit_test?

我正在尝试学习如何测试程序,所以我尝试了Boost。我已经开始阅读它并且here我遇到过这一行:现在我可以编译它并链接到单元测试框架。我应该从哪里以及如何获得单元测试框架?它是什么?我只是不知道和什么一起吃。有人可以提供一些如何使用它的步骤,或者可能会指出一些其他教程,其中甚至会解释最简单的东西,如单元测试框架以及如何将其链接。谢谢 最佳答案 只是一个快速的评论。这个库的问题在于它至少有三种不同的方式来实现和运行测试。根据您在包含boost单元测试header之前添加到代码中的#defines,它可以自动为您生成一个主要功能(然后构

c++ - py.test 与非 python 测试(具体来说,与 cxxtest)

我与一个开发基于MPI的C++数值应用程序的团队合作。该小组使用cxxtest来构建单独的单元测试或小型套件,但是1)跨目录聚合具有cxxtest的常用功能存在一些复杂性,并且2)有一些集成测试更容易通过从单个python线程。我们想使用py.test作为将它们结合在一起的粘合剂,因为它宣传自己能够运行非python测试(我可能会被说服跳到Nose上)。任何人都可以让我了解执行此操作的最佳实践吗?同样,由于它似乎是py.test的广告功能之一,我很乐意按照最初设想的方式进行。谢谢,伊莱 最佳答案 Thisguide从2014年2月开

c++ - 无法使用 Microsoft CodeGen 使用 Visual Studio 2015 和 Clang 3.7 构建 Google Test

使用VS2015及其新的内置clang工具集/项目模板,我无法成功构建GoogleTest。我收到以下错误:Erroruseofundeclaredidentifier'chdir';didyoumean'_chdir'?Erroruseofundeclaredidentifier'fdopen'Erroruseofundeclaredidentifier'read'Erroruseofundeclaredidentifier'write'Erroruseofundeclaredidentifier'close'Erroruseofundeclaredidentifier'O_RDON

c++ - 避免 set 创建 Comparator 对象的实际拷贝是否合法

在这样的代码中:Comparatorcomp(3);sets1(comp);sets2(comp);sets3(comp);sets4(comp);Comparator的实际实例(即comp)在每次创建set对象时被复制为cpp引用状态Thecontainerkeepsaninternalcopyofallocandcomp,whichareusedtoallocatestorageandtosorttheelementsthroughoutitslifetime.所以我们想知道这在C++中是否合法#include#includestructA{inti=0;booloperator(

c++ - 如何检查 Google Test 是否在我的代码中运行

如果正在进行单元测试,我不想运行一段代码。我希望找到一些我可以检查的gtest库设置的#defined标志。我找不到用于此目的的一个,但在查看gtestheader后,我找到了一个我认为可以像这样使用的:SomeClass::SomeFunctionImUnitTesting(){//somecodehere#ifndefGTEST_NAME//somecodeIdon'twanttobetestedhere#endif//morecodehere}这似乎不起作用,因为所有代码都会运行。是否有另一个我可以检查的标志可能有效? 最佳答案

C++ STL 集 : Compare object with extrinsic state

这个定义在OuterClass中:structCompare{booloperator()(constT&,constT&);};typedefsetMySet;我的问题是比较函数operator()取决于OuterClass的状态。(MySet实例在优化算法期间使用,它们必须在不同阶段以不同方式排序。)是否有任何方法/变通方法可以从比较函数operator()中访问OuterClass的非静态成员? 最佳答案 Isthereanyway/workaroundtoaccessnonstaticmembersofOuterClassf

java - IntelliJ IDEA 14 : How to skip tests while deploying project into Tomcat

我有一个SpringMVC项目使用IntelliJIDEA14作为我的IDE(我是IntelliJIDEA的新手;我使用了Eclipse)。我的主要Java代码在文件夹src/main中,单元测试代码在src/test中。在部署项目时,我发现所有的单元测试都被执行了。如何在将项目部署到Tomcat时跳过所有单元测试? 最佳答案 如果你使用Maven,在View>ToolWindows>MavenProjects点击如下所示的按钮(称为SkipTestsMode)。本质上,当您说运行package时,它会将test阶段从生命周期中移除

java - IntelliJ IDEA 14 : How to skip tests while deploying project into Tomcat

我有一个SpringMVC项目使用IntelliJIDEA14作为我的IDE(我是IntelliJIDEA的新手;我使用了Eclipse)。我的主要Java代码在文件夹src/main中,单元测试代码在src/test中。在部署项目时,我发现所有的单元测试都被执行了。如何在将项目部署到Tomcat时跳过所有单元测试? 最佳答案 如果你使用Maven,在View>ToolWindows>MavenProjects点击如下所示的按钮(称为SkipTestsMode)。本质上,当您说运行package时,它会将test阶段从生命周期中移除