書き換え動作を使用した注釈へのパラメータの追加
4338 ワード
この例では、 探索とマッチング注釈の証明 口ひげテンプレートを使用して注釈を修正します. Senseiは、問題のあるコードパターンと一致し、一致する実装にそれらを修正する機能を提供します.この例では
我々がなぜそれを無効にしたかについて忘れるので、特定の理由なしで無効なテストは長期的に問題を証明することができます.
コードレビュー中に、注釈記述として説明記述を追加するのは良い考えであることをよく指摘します.
レシピを書くことができます
何をしようかと思うと、 マッチする 変更する
私の使用
次に、一般的な情報に基本的な説明テキストを追加します.
規則を警告することで、任意の一致するコードが強調表示されますが、glaringエラーとして表示されません.
全般
〜〜〜
無効にする説明を追加してください
簡単に説明する理由を説明する必要があります
レベル:エラー
〜〜〜
レシピエディターでは、注釈を合わせて検索を変更します.
これは、プレビューのすべての注釈を強調表示されます.
それをして、私はフィルターをかけたいです
それから、パラメータなしで注釈だけにマッチしたいです、そして、私はそれをするためにGUIを使うことができます.
すなわち、
〜〜〜
検索
注釈
タイプ: "org . junit . jupiter . api . disable "
なし
パラメータ
/{ }
〜〜〜
私のQuickfixのために、私は書き直しアクションを使用します.
私は
それから、私はプレースマーカコメントを作成するのに必要な余分のコードを加えます.
すなわちQuickFIX :
書き直しの速いフィックスを構築するとき、それが私たちが書き直したいコード要素を捜すことができるとき、それはより簡単です
この例では、注釈を修正するために再書き込み操作を使用しました.書き換えは、任意のコード要素に適用できる汎用のアクションです.
このブログ記事のすべてのコードは
Sensei Intellijプラグインは無料でダウンロードできますIntelliJ Marketplace .
@Disabled
問題のあるコードパターンとしてパラメータなしで.無効なテスト注釈
我々がなぜそれを無効にしたかについて忘れるので、特定の理由なしで無効なテストは長期的に問題を証明することができます.
@Disabled
void thisTestMethodHasNoDisabledReason(){
Assertions.fail("This test is disabled and should not run");
}
危険性は、時間が経過すると、コードベースが移動すると、無効になったテストは、コードの目的でステップで更新されず、最終的に冗長で無関係になり、潜在的に再利用できないことです.コードレビュー中に、注釈記述として説明記述を追加するのは良い考えであることをよく指摘します.
@Disabled("Disabled to demonstrate adding a reason")
void thisTestMethodHasDisabledReason(){
Assertions.fail("This test is disabled and should not run");
}
ビデオで先生のデモビデオ
先生レシピ
レシピを書くことができます
@Disabled
説明なしで追加され、なぜ私たちはそれを無効にする理由を説明する実際の理由を追加することを思い出させる迅速な修正.タスク
何をしようかと思うと、
Disabled
パラメータのない注釈Disabled
注釈をマーカーテキストで「todo :ここで説明を追加」する解決策
私の使用
Alt+Enter
新しいレシピを作成します.次に、一般的な情報に基本的な説明テキストを追加します.
規則を警告することで、任意の一致するコードが強調表示されますが、glaringエラーとして表示されません.
全般
〜〜〜
無効にする説明を追加してください
簡単に説明する理由を説明する必要があります
レベル:エラー
〜〜〜
レシピエディターでは、注釈を合わせて検索を変更します.
これは、プレビューのすべての注釈を強調表示されます.
それをして、私はフィルターをかけたいです
type
. 私はちょうど使えるDisabled
しかし、私はJUnit 5からの注釈と一致するようにパッケージを完全に修飾します.プレビューが表示されるので、私は簡単にコードからこれをコピーして、ペーストすることができます.それから、パラメータなしで注釈だけにマッチしたいです、そして、私はそれをするためにGUIを使うことができます.
すなわち、
〜〜〜
検索
注釈
タイプ: "org . junit . jupiter . api . disable "
なし
パラメータ
/{ }
〜〜〜
私のQuickfixのために、私は書き直しアクションを使用します.
私は
Show Variables
機能は私に口ひげの変数を表示し、コンテンツをプレビューします.それから、私はプレースマーカコメントを作成するのに必要な余分のコードを加えます.
すなわちQuickFIX :
availableFixes:
- name: "Add a todo comment parameter"
actions:
- rewrite:
to: "{{{ . }}}(\"TODO: add a description here\")"
target: "self"
概要
書き直しの速いフィックスを構築するとき、それが私たちが書き直したいコード要素を捜すことができるとき、それはより簡単です
self
我々が行動することができる実体.この例では、注釈を修正するために再書き込み操作を使用しました.書き換えは、任意のコード要素に適用できる汎用のアクションです.
このブログ記事のすべてのコードは
junitexamples
module ブログ例リポジトリgithub.com/SecureCodeWarrior/sensei-blog-examples Sensei Intellijプラグインは無料でダウンロードできますIntelliJ Marketplace .
Reference
この問題について(書き換え動作を使用した注釈へのパラメータの追加), 我々は、より多くの情報をここで見つけました https://dev.to/securecodewarrior/adding-parameters-to-annotations-using-rewrite-actions-1kigテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol