【问题标题】:Before/After methods for Ruby Minitest frameworkRuby Minitest 框架的之前/之后方法
【发布时间】:2013-11-18 22:19:01
【问题描述】:

我正在使用最新版本的 Ruby(2.0.0) 和 Minitest (5.0.8)。

我正在寻找一种方法来创建 2 种方法,一个之前和一个之后。 before 方法应该在 Minitest 甚至在测试用例上开始之前运行,而 after 应该在 ALL 的测试完成后运行。

我已经使用了在每个单独的测试之前和之后运行的 setup() 和 teardown() 方法,但我正在寻找包含整个 Minitest 套件的东西。

我见过:

Ruby Minitest: Suite- or Class- level setup?

Before/After Suite when using Ruby MiniTest

与最新版本的 Minitest 相比,它们都已过时。

这还有可能吗?

【问题讨论】:

    标签: ruby minitest


    【解决方案1】:

    before 方法很简单,您只需将测试设置配置为在 Minitest 开始之前调用一个方法。

    after方法可以使用Minitest API提供的方法Minitest.after_run(&block)来实现。例如:

    Minitest.after_run do
      puts 'All tests finished'
      my_method_call()
    end
    

    【讨论】:

    • 非常感谢,不敢相信我找不到那个
    【解决方案2】:

    您可能想看看 minitest-hooks。 minitest-hooks 用before(:all)after(:all) 扩展了minitest,当你的describe 块的结构是扁平的时,它们可以做你想做的事情。当您嵌套了描述块时,您可能需要使用an approach that is similar to Thiago's answer

    【讨论】:

      猜你喜欢
      • 2011-08-18
      • 2017-09-02
      • 2012-06-07
      • 1970-01-01
      • 1970-01-01
      • 2014-08-30
      • 2012-05-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多