zoukankan      html  css  js  c++  java
  • Ruby元编程:单元测试框架如何找到测试用例

    前几天看了Google Testing Blog上的一篇文章讲到C++因为没有反射机制,所以如何注册测试用例就成了一件需要各显神通的事情。从我的经验来看,无论是Google的GTest还是微软的LTM,都是通过宏来解决问题。但是对于Ruby之流的动态语言,这种事情太小菜一叠了。请看以下代码例子:

     1 class Test
     2   def test_001
     3      puts 'test_001'
     4    end
     5 
     6   def test_002
     7      puts 'test_002'
     8    end
     9 end
    10 
    11 t = Test.new
    12 test_methods = t.public_methods.grep(/^test_/)  # 把所有test_开头的方法找出来。
    13 test_methods.each do |test|
    14   t.send(test)  # 执行每个测试用例。
    15 end

    有兴趣的同学可以自己去考察一下Ruby单元测试框架的实现,不了解元编程的话可以参考Metaprogramming Ruby。

  • 相关阅读:
    SpringBoot整合jsp
    SpringBoot常用application.properties配置
    SpringBoot入门
    vue cli创建vue项目
    vue 指令
    vue hello
    pytest doc
    atom
    java csvutil
    Django uuidfield 实现自动生成唯一列,并设置为主键
  • 原文地址:https://www.cnblogs.com/panda_lin/p/3363432.html
Copyright © 2011-2022 走看看