我正在使用Resharper(使用StyleCop插件,虽然我不认为这与问题/答案相关)在我们的代码库中强制执行命名约定。几乎所有地方的工作都非常出色,只有一个例外。
对于测试方法名称,我更喜欢以下约定:
ThingOrBehaviourUnderTest_Action_ExpectedOutcome
目前这会导致命名警告不一致,到目前为止我只是忽略它(我知道我可以在该文件中禁用警告,但是它会禁用所有其他命名不一致的警告)。在我可以分配的样式列表中,Resharper提供了camel case,这将导致:
ThingOrBehaviourUnderTestActionExpectedOutcome
或用下划线分隔的单词:
Thing_or_behaviour_under_test_action_expected_outcome
两者都接近我想要的,但不完全在那里。我想我正在采用一种允许下划线作为驼峰测试方法名称中的有效字符的方法,或者支持自定义命名约定的方法。这可能吗?
答案 0 :(得分:6)
我知道这个问题已经过时了,但现在ReSharper 7 finally supports the definition of extended naming rules。这些可以为测试方法提供单独的名称样式。
答案 1 :(得分:4)
AgentSmith plugin for ReSharper应通过其正则表达式规则支持来满足您的需求。