单元测试中方法名称前面的井号(#)符号的用途是什么?

cyb*_*bat 7 unit-testing naming-conventions

我看到许多测试描述,例如在Mocha中使用方法前面的#符号.这个的目的和起源是什么?我多年来一直这样做,就像一个旅鼠,所以我觉得是时候问为什么了:)

describe('#myMethod()', function() { ... })
Run Code Online (Sandbox Code Playgroud)

Dav*_*uth 6

我第一次在 Ruby 中看到这个约定,其中类方法在文本中被称为Class.method(或者,不太频繁地,Class::method)和实例方法被称为Class#method。标点符号的不同既需要告诉读者该方法是什么类型,也需要消除具有相同名称的类和实例方法的歧义(并不是说拥有这些通常是个好主意)。

测试命名约定可能来到的Javascript RSpec的语法(沿describeit等等)。