如何在Ruby中获取方法的完全限定名称?

假设我在Ruby的工作区中有一个可用的方法。 是否有我可以使用的命令将恢复该方法的完全限定名称?

我正在寻找类似于Matlab中哪个函数的东西,它为它给出的任何参数返回一个明确的名称。

我问,因为我在Cucumber中编写了一个需要发送特定GET和POST请求的测试。 我在我的工作区中都有getpost方法,但我没有自己导入它们,所以我不知道它们来自哪里。 我想查看这些方法的文档。 为了找到文档,我需要知道它们所定义的模块。我正在尝试获取完全限定的名称,以便找出它们来自哪个模块。

我想到了。 安德鲁马歇尔留下了一条评论,指出了我正确的方向。

首先我安装了pry,将它包含在我的gemfile中并运行bundle install

然后我将binding.pry插入到我的测试代码中。 当我运行我的测试时,这让我陷入了撬开的困境。

在pry会话中,我输入了ls命令 ,它列出了我上下文中的所有变量。 我在Rack::Test::Methods#methods下找到了getpost

 Rack::Test::Methods#methods: _current_session_names authorize basic_authorize build_rack_mock_session build_rack_test_session clear_cookies current_session delete digest_authorize follow_redirect! get head header last_request last_response options post put rack_mock_session rack_test_session request set_cookie with_session 

因此,找出工作空间中方法的FQN的一种方法是运行Pry的ls命令,然后检查输出。