加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在Module / Class的末尾执行代码,比如Ruby test / unit

发布时间:2020-12-17 03:08:28 所属栏目:百科 来源:网络整理
导读:Ruby的单元测试框架执行单元测试,即使没有人创建单元测试对象.例如, 在MyUnitTest.rb中 require 'test/unit'class MyUnitTest Test::Unit::TestCase def test_true assert true endend 当我调用该脚本时 ruby MyUnitTest.rb test_true方法自动执行.这是怎么
Ruby的单元测试框架执行单元测试,即使没有人创建单元测试对象.例如,

在MyUnitTest.rb中

require 'test/unit'

class MyUnitTest < Test::Unit::TestCase
    def test_true
        assert true
    end
end

当我调用该脚本时

ruby MyUnitTest.rb

test_true方法自动执行.这是怎么做到的?

我试图提出一个可以做类似的框架.我不想在使用我的框架的每个模块的末尾“if __ FILE __ == $0”.

谢谢.

解决方法

Test :: Unit使用 at_exit,它在应用程序退出之前立即运行代码:

at_exit do
  puts "printed before quit"
end

.. other stuff

在关闭类或模块定义之后,我认为没有任何方法可以专门运行代码.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读