我知道函数debug_backtrace
,但是我正在寻找一些易于使用的函数实现GetCallingMethodName()
?如果它也提供了方法的类(如果确实是方法),那将是完美的。
该debug_backtrace()
函数是了解这一点的唯一方法,如果您很懒,这是您GetCallingMethodName()
自己编写代码的另一个原因。
对抗懒惰! :D
问题内容: 要修复测试用例,我需要确定是否从特定的调用程序函数中调用了该函数。我负担不起添加布尔值参数,因为它会破坏定义的接口。怎么办呢? 这是我想要实现的。在这里,我无法更改operation()的参数,因为它是接口实现。 问题答案: 你可以试试
问题内容: 我觉得我应该知道这一点,但我一直无法弄清楚…… 我想从内部获取一个方法的名称(恰好是一个集成测试),以便它可以打印出一些诊断文本。当然,我可以将方法的名称硬编码在字符串中,但是如果可能的话,我想使测试更加干燥。 问题答案: 涉及通过诸如此类进行内省的答案是合理的。但是根据您的情况,可能还有另一种选择: 如果您的集成测试是使用unittest模块编写的,则可以在TestCase中使用。
问题内容: Python:如何在被调用方法中获取调用者的方法名称? 假设我有2种方法: 如果我不想对method1进行任何更改,如何在method2中获取调用者的名称(在本示例中,名称为method1)? 问题答案: inspect.getframeinfo和其他相关功能可以帮助: 该自省旨在帮助调试和开发;建议不要将其用于生产功能。
问题内容: Python:如何在被调用方法中获取调用者的方法名称? 假设我有2种方法: 如果我不想对method1进行任何更改,如何在method2中获取调用方的名称(在本示例中,名称为method1)? 问题答案: 和其他相关功能可以帮助: 该自省旨在帮助调试和开发;建议不要出于生产功能目的而依赖它。
问题内容: 例如,方法调用方法。在方法中,如何获取文件名(我不想传递给方法)… 问题答案: 您可以使用该模块来实现此目的:
问题内容: 如何获得调用当前函数的函数的名称和行?我想要一个像这样的基本调试功能(使用npmlog定义): 当从另一个函数调用时,它将是这样的: 为了清楚起见,我想要的基本上与[ython中的类似: 是否有等效的Node来完成此任务? 问题答案: 您可以添加一些原型以提供从V8访问此信息的权限: 分别返回“ 28”和“ foo”。