草庐IT

Test-Kitchen

全部标签

ruby-on-rails - Ruby on Rails2.3.8 : Unit Testing: Rails/Ruby has setup to run before each test. 在所有测试之前运行的方法怎么样?

我想在每次运行测试时初始化数据库一次,而不是每次测试。我知道Rspec有before(:all),但我无法让它工作。我想知道Rails是否有类似的东西。 最佳答案 首先:在Test::Unit中曾经有一个before(:all)等价物,但它被删除了(不知道为什么)。其次:有很好的理由不做你想做的事——测试应该相互独立运行,而不是依赖于数据库中的状态。这样您就可以保证它完全测试您期望它测试的内容。如果您有一个更改数据库状态的测试,并且您移动它并且它在另一个期望它是另一种状态的测试之后运行-您会遇到问题。因此,所有测试必须是独立的。因此

c++ - 您如何使用 Boost.Test 指定应该预期的异常?

我有一个Boost单元测试用例,它会导致被测对象抛出异常(这就是测试,导致异常)。如何在测试中指定预期该特定异常。我可以通过使用BOOST_AUTO_TEST_CASE_EXPECTED_FAILURES指定测试应该有一定数量的失败,但这似乎相当不具体。我希望能够在测试中的特定点说应该抛出异常并且不应将其视为失败。 最佳答案 这不行吗?BOOST_CHECK_THROW(expression,an_exception_type);如果表达式抛出给定的异常类型,这应该会导致测试通过,否则会失败。如果您需要与'CHECK'不同的严重性,

c++ - 您如何使用 Boost.Test 指定应该预期的异常?

我有一个Boost单元测试用例,它会导致被测对象抛出异常(这就是测试,导致异常)。如何在测试中指定预期该特定异常。我可以通过使用BOOST_AUTO_TEST_CASE_EXPECTED_FAILURES指定测试应该有一定数量的失败,但这似乎相当不具体。我希望能够在测试中的特定点说应该抛出异常并且不应将其视为失败。 最佳答案 这不行吗?BOOST_CHECK_THROW(expression,an_exception_type);如果表达式抛出给定的异常类型,这应该会导致测试通过,否则会失败。如果您需要与'CHECK'不同的严重性,

ruby Test::Unit 命令行选项?

在Ruby的unit::test框架中运行测试时,是否有一种非常简单的方法可以从命令行指定只运行一个测试(即指定测试类和测试成员变量)?如果没有,是否有其他框架具有此功能? 最佳答案 ruby/path/to/foo_test.rb--nametest_should_do_something_really_spiffy这将调用该文件中方法test_should_do_something_really_spiffy定义的测试。编辑:这是为大多数ruby​​测试编写的Test::Unit框架准备的。我假设您的意思相同。

c++ - Boost.Test : Looking for a working non-Trivial Test Suite Example/Tutorial

已结束。此问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提出有关书籍、工具、软件库等方面的建议的问题。您可以编辑问题,以便用事实和引用来回答它。关闭7年前。ImprovethisquestionBoost.Testdocumentation并且示例似乎并没有真正包含任何重要的示例,到目前为止,我发现的两个教程here和here虽然有帮助,但都是相当基本的。我想为整个项目提供一个主测试套件,同时维护每个模块的单元测试套件和可以独立运行的装置。我还将使用模拟服务器来测试各种网络边缘案例。我使用的是Ubuntu8.04,但我会以任何Linux或Wind

c++ - Boost.Test : Looking for a working non-Trivial Test Suite Example/Tutorial

已结束。此问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提出有关书籍、工具、软件库等方面的建议的问题。您可以编辑问题,以便用事实和引用来回答它。关闭7年前。ImprovethisquestionBoost.Testdocumentation并且示例似乎并没有真正包含任何重要的示例,到目前为止,我发现的两个教程here和here虽然有帮助,但都是相当基本的。我想为整个项目提供一个主测试套件,同时维护每个模块的单元测试套件和可以独立运行的装置。我还将使用模拟服务器来测试各种网络边缘案例。我使用的是Ubuntu8.04,但我会以任何Linux或Wind

c++ - 如何让我的类(class)成为 google-test 类(class)的 friend ?

我听说有可能让google-testTestCase类friend加入我的类,从而使测试能够访问我的私有(private)/protected成员。如何做到这一点? 最佳答案 试试这个(直接来自Google测试文档...):FRIEND_TEST(TestCaseName,TestName);例如://foo.h#include//DefinesFRIEND_TEST.classFoo{...private:FRIEND_TEST(FooTest,BarReturnsZeroOnNull);intBar(void*x);};//fo

c++ - 如何让我的类(class)成为 google-test 类(class)的 friend ?

我听说有可能让google-testTestCase类friend加入我的类,从而使测试能够访问我的私有(private)/protected成员。如何做到这一点? 最佳答案 试试这个(直接来自Google测试文档...):FRIEND_TEST(TestCaseName,TestName);例如://foo.h#include//DefinesFRIEND_TEST.classFoo{...private:FRIEND_TEST(FooTest,BarReturnsZeroOnNull);intBar(void*x);};//fo

c++ - 在 Google Test 中打印附加输出

我正在使用googletestC++testingframework.通常运行测试的文本输出如下所示:[RUN]MyTest.Fuzz[OK]MyTest.Fuzz(1867ms)我想以相同的格式输出一些额外的数据,例如:[RUN]MyTest.Fuzz[]randomseed=1319760587[OK]MyTest.Fuzz(1867ms)我找到了LoggingAdditionalInformation在googletest文档中,但这似乎只将结构化数据发送到XML输出,而不是标准控制台输出。我可以在单元测试中调用googletest函数以这种格式输出文本吗?手动将数据发送到cou

c++ - 在 Google Test 中打印附加输出

我正在使用googletestC++testingframework.通常运行测试的文本输出如下所示:[RUN]MyTest.Fuzz[OK]MyTest.Fuzz(1867ms)我想以相同的格式输出一些额外的数据,例如:[RUN]MyTest.Fuzz[]randomseed=1319760587[OK]MyTest.Fuzz(1867ms)我找到了LoggingAdditionalInformation在googletest文档中,但这似乎只将结构化数据发送到XML输出,而不是标准控制台输出。我可以在单元测试中调用googletest函数以这种格式输出文本吗?手动将数据发送到cou