ruby-on-rails - 如何生成一个包含类中方法名称的文件?

标签 ruby-on-rails ruby


我有这个单元测试文件:

class WebsiteCheckPageElements < Test::Unit::TestCase

def setup
 ...
end

def test_achievements_iknow_report_page
  ...
end

def test_achievements_daily_report_page
  ...
end

def test_client_side_report_page
  ...
end
end

我需要编写一个 ruby​​ 脚本,将测试的名称写入 .txt 文件。就像是

设置
test_achievements_iknow_report_page
test_achievements_daily_report_page
test_client_side_report_page

提前感谢您的建议。

最佳答案

比其他答案更可靠的方法:

File.open("test_methods.txt", "w") do |f|
  WebsiteCheckPageElements.instance_methods.each do |method|
    f << "#{method}\n"
  end
end

这将实际使用 Ruby 运行时并且不会在未定义方法的地方(例如在 String 中)意外匹配 def,它不会匹配中的其他类文件,它将正确读取继承层次结构。

关于ruby-on-rails - 如何生成一个包含类中方法名称的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7910767/

相关文章:

ruby-on-rails - 将 Postgres 数组列用于 Rails 多对多关系

ruby-on-rails - 让 child 、孙子进入层次结构

javascript - Ruby On Rails - 如何在元素后生成 javascript include

ruby - 有没有办法动态地将范围添加到事件记录类?

ruby - rhc 安装程序给出错误 `no such file dl/import`

用于将字符串放在括号中的 Ruby 函数

ruby-on-rails - 不使用 update_page 和 rjs 更新页面

ruby-on-rails - 带有 Carrierwave 的动态 uploader

ruby-on-rails - 如何修改从 Rails Controller 返回的 JSON

ruby-on-rails - 如何获取/追溯方法调用堆栈