2009-04-16 3 views
14

私はResharper 4.5にアップグレードしましたが、私のすべてのBDDishテストメソッドは命名標準に準拠していないとマークされています。私の命名規則は次のようなものです:Resharper 4.5でbddネーミングスタイルを使用するには?

public void Something_ShouldHaveThisResult() 

Resharperはこのメソッドのアンダースコアが嫌いです。テスト方法のためだけにこれをオフにする方法はありますか?残りのコードについては、通常の命名規則があります。

答えて

0

メニュー:

Resharper |オプション - >言語 - >共通 - >名前付けスタイル:名前付けスタイルを削除します。彼らは、 "無効にする"機能を持っている必要がありますが、それらはありません。

+7

私はテストメソッドを除いてすべてのためにそれを実施したいと思います。 。命名スタイルを削除すると、すべてのメソッドで無効になります。 –

+0

あなたは正しいかもしれません。これはResharperにとって新しいことですので、すぐに更新することができます。 – CLaRGe

1

より正確なコード命名規則には、Agent Smithを使用できます。

注:最終的なR#4.5のバージョンはまだコンパイルされていないと思われますが、間もなくリリースされると確信しています。

+0

+1素晴らしいプラグインです。しかし、この特定の設定に関連するバグがあります:http://code.google.com/p/agentsmithplugin/issues/detail?id=94 – TrueWill

2

あなたは

// ReSharperのは

// ReSharperのは、各クラスの四肢の周り

をInconsistentNaming復元InconsistentNaming無効に使用することができます。例:

// ReSharper disable InconsistentNaming 
namespace bob 
{ 
    [TestClass] 
    public class MyTestClass 
    { 
     [TestMethod] 
     public void Test_Test() 
     { 
     } 
    } 
} 
// ReSharper restore InconsistentNaming 

これにより、名前の警告だけでなく、すべての警告が削除されます。

4

テストコード以外のソースでMicrosoftスタイルのガイドに従いたい場合 - StyleCop for ReSharper pluginを試したことがありますか?

以前に推奨されているように、内部ReSharper命名規則セットを無効にするか、検査設定を切り替える。 StyleCop(したがってStyleCop ReSharperプラグイン)では、ソリューションフォルダ構造内のSettings.StyleCopファイルを継承できます。したがって、テストコードの解析は無効になりますが、「実際の」ソースで有効な名前を確認することができます。

2

私はReSharperのバグトラッカーで既にこの要求を追加しました。あなたはvote for itです。

+0

+1 - 次のバージョンで修正しているようです。うまくやった! – TrueWill

1

ルールを削除する必要はありません。アンダースコアを受け入れる新しいルールを追加できます

Resharper |オプション - >言語 - >共通 - >名前付けスタイルを選択し、新しいルールを下に追加する "ユーザ定義の命名規則"

+1

ここでルールを追加すると、通常のコードでBDDスタイルの命名規則が適用されるようです。これをテストメソッド名だけに設定する特別な方法がないかぎり? – MotoWilliams

+0

あなたは正しいです。私は通常の方法のためにアンダースコアを使用しないので、私はこれに気付かなかった。 –

2

Resharper 4.5.1がこの機能を追加しました。テストメソッドに特別に適用され、アンダースコアを含むことを許可する新しいカスタムネーミングルールを追加できるようになりました。

+0

そうです。プロダクションコードで使用するようにデフォルトネーミングスタイルを設定し、テストネーミングスタイルにデフォルト以外の2番目のルールを追加すると、R#は使用時にフィットしません。 – Jay

関連する問題