SCW 아이콘
영웅 배경, 구분선 없음
블로그

リライトアクションを使用してアノテーションにパラメータを追加

앨런 리처드슨
2020년 10월 26일 게시
마지막 업데이트: 2026년 3월 10일

このブログ記事では、次のことを行います。

  • 注釈の検索と照合のデモンストレーション
  • 口ひげテンプレートを使ったアーメン注釈

Senseiは、問題のあるコードパターンを照合し、合意された実装に合わせて修正する機能を提供します。この例では、問題のあるコードパターンとしてパラメーターなしの @Disabled を使用しています。

無効化されたテスト注釈

特定の理由なしにテストを無効にすると、無効にした理由を忘れてしまうため、長期的には問題になる可能性があります。


@Disabled
void このテストメソッドには無効な理由がありません () {
Assertions.fail (「このテストは無効になっているため、実行すべきではありません」);
}

リスクは、時間が経つにつれてコードベースが移動し、無効になったテストがコードの目的に沿って更新されず、最終的には冗長で無関係になり、二度と有効にならない可能性があることです。

コードレビューでは、注釈パラメータとして説明的な説明を追加するのが良いとよく指摘されます。


@Disabled (「理由を追加したことを示すために無効にされました」)
void このテストメソッドは無効になっています。Reason () {
Assertions.fail (「このテストは無効になっているため、実行すべきではありません」);
}

先生のレシピ

@Disabled が説明なしに追加されたことを検出するレシピと、それを無効にした理由を説明する実際の理由を追加することを思い出させるクイックフィックスを書くことができます。

これから何をするかを考えるとき、私は次のことをしなければなりません。

  • パラメータなしで Disabled アノテーションと一致させる
  • Disabled アノテーションを変更して、「TODO: ここに説明を追加」というマーカーテキストの付いたパラメーターが含まれるようにします

警告レシピの作成

Alt+Enterを使用して新しいレシピを作成します。

새 레시피 함수 만들기

次に、一般情報に基本的な説明文を追加します。

일반 설정

ルールを警告にすると、一致するコードはすべて強調表示されますが、目立つエラーとしては表示されません。

규칙을 경고로 만들기

注釈を探す

レシピエディターで、注釈と一致するように検索を変更します。

これにより、プレビュー内のすべての注釈が強調表示されます。

레시피 편집기

それが済んだら、アノテーションのタイプでフィルタリングしたいと思います。

Disabledを使うこともできますが、JUnit 5のアノテーションとしか一致しないように、クラスをパッケージで完全に修飾します。ソースコードはプレビューに表示されているので、これを実際のコードから簡単にコピーして貼り付けることができ、タイプミスを防ぐことができます。

次に、パラメータなしで注釈だけを一致させたいのですが、GUIを使用してそれを行うことができます。

레시피 설정

すなわち、検索:

検索:
注釈:
タイプ:「org.junit.jupiter.api.disabled」
なし:
パラメーター:
-{}

書き換えクイックフィックスアクションの作成

クイックフィックスでは、リライトアクションを使用します。

私は使う 変数を表示 Mustache 変数を表示して内容をプレビューする機能。

퀵픽스 설정

次に、プレースマーカーのコメントを作成するのに必要なコードを追加します。

장소 마커 주석을 만들기 위해 추가 코드 추가

すなわち、クイックフィックス:

利用可能な修正:
-名前:「Todo コメントパラメータを追加」
アクション:
-書き換え:
宛先:「{{{.}}} (\" TODO: ここに説明を追加\」)」
ターゲット:「自己」

センセイ・イン・アクション

実際のレシピ作成プロセスを紹介する短いビデオを作成しました。

요약

書き換えクイックフィックスを作成する場合、書き換えたいコード要素を検索できると簡単になります。なぜなら、それがアクションの対象となるセルフエンティティになるからです。

この例では、書き換えアクションを使用して注釈を修正しました。リライトは、どのコード要素にも適用できる汎用アクションで、デフォルトとして検討するとよいでしょう。

리소스 표시
리소스 표시

Senseiを使って問題のあるコードパターンをマッチさせ、アノテーションマッチングの例を使って合意された実装に修正する方法を学びましょう。

더 관심이 있으신가요?

앨런 리처드슨은 20년 이상 개발자로서 테스터부터 테스트 책임자에 이르기까지 테스트 계층의 모든 수준에서 경험을 쌓아왔습니다.Secure Code Warrior 팀과 직접 협력하여 고품질의 안전한 코드 개발을 개선하고 있습니다. 앨런은 『Dear Evil Tester』와 『Java for Testers』를 포함한 4권의 책의 저자입니다. 또한 앨런은 테크니컬 웹 테스트와 Java를 사용한 Selenium WebDriver 학습에 도움이 되는 온라인 교육 과정도 제작했습니다.앨런은 SeleniumSimplified.com, EvilTester.com, JavaForTesters.com, CompendiumDev.co.uk에 글과 교육 동영상을 게시하고 있습니다.

더 알아보세요

Secure Code Warrior는 소프트웨어 개발 라이프사이클 전반에 걸쳐 코드를 보호하고 사이버보안을 최우선으로 하는 문화를 구축하는 데 도움을 드립니다. 애플리케이션 보안 관리자, 개발자, CISO 또는 보안 담당자이든, 안전하지 않은 코드와 관련된 위험을 줄이는 데 도움을 드립니다.

데모 예약
공유:
링크드인 브랜드사회적x 로고
저자
앨런 리처드슨
게시일: 2020년 10월 26일

앨런 리처드슨은 20년 이상 개발자로서 테스터부터 테스트 책임자에 이르기까지 테스트 계층의 모든 수준에서 경험을 쌓아왔습니다.Secure Code Warrior 팀과 직접 협력하여 고품질의 안전한 코드 개발을 개선하고 있습니다. 앨런은 『Dear Evil Tester』와 『Java for Testers』를 포함한 4권의 책의 저자입니다. 또한 앨런은 테크니컬 웹 테스트와 Java를 사용한 Selenium WebDriver 학습에 도움이 되는 온라인 교육 과정도 제작했습니다.앨런은 SeleniumSimplified.com, EvilTester.com, JavaForTesters.com, CompendiumDev.co.uk에 글과 교육 동영상을 게시하고 있습니다.

공유:
링크드인 브랜드사회적x 로고

このブログ記事では、次のことを行います。

  • 注釈の検索と照合のデモンストレーション
  • 口ひげテンプレートを使ったアーメン注釈

Senseiは、問題のあるコードパターンを照合し、合意された実装に合わせて修正する機能を提供します。この例では、問題のあるコードパターンとしてパラメーターなしの @Disabled を使用しています。

無効化されたテスト注釈

特定の理由なしにテストを無効にすると、無効にした理由を忘れてしまうため、長期的には問題になる可能性があります。


@Disabled
void このテストメソッドには無効な理由がありません () {
Assertions.fail (「このテストは無効になっているため、実行すべきではありません」);
}

リスクは、時間が経つにつれてコードベースが移動し、無効になったテストがコードの目的に沿って更新されず、最終的には冗長で無関係になり、二度と有効にならない可能性があることです。

コードレビューでは、注釈パラメータとして説明的な説明を追加するのが良いとよく指摘されます。


@Disabled (「理由を追加したことを示すために無効にされました」)
void このテストメソッドは無効になっています。Reason () {
Assertions.fail (「このテストは無効になっているため、実行すべきではありません」);
}

先生のレシピ

@Disabled が説明なしに追加されたことを検出するレシピと、それを無効にした理由を説明する実際の理由を追加することを思い出させるクイックフィックスを書くことができます。

これから何をするかを考えるとき、私は次のことをしなければなりません。

  • パラメータなしで Disabled アノテーションと一致させる
  • Disabled アノテーションを変更して、「TODO: ここに説明を追加」というマーカーテキストの付いたパラメーターが含まれるようにします

警告レシピの作成

Alt+Enterを使用して新しいレシピを作成します。

새 레시피 함수 만들기

次に、一般情報に基本的な説明文を追加します。

일반 설정

ルールを警告にすると、一致するコードはすべて強調表示されますが、目立つエラーとしては表示されません。

규칙을 경고로 만들기

注釈を探す

レシピエディターで、注釈と一致するように検索を変更します。

これにより、プレビュー内のすべての注釈が強調表示されます。

레시피 편집기

それが済んだら、アノテーションのタイプでフィルタリングしたいと思います。

Disabledを使うこともできますが、JUnit 5のアノテーションとしか一致しないように、クラスをパッケージで完全に修飾します。ソースコードはプレビューに表示されているので、これを実際のコードから簡単にコピーして貼り付けることができ、タイプミスを防ぐことができます。

次に、パラメータなしで注釈だけを一致させたいのですが、GUIを使用してそれを行うことができます。

레시피 설정

すなわち、検索:

検索:
注釈:
タイプ:「org.junit.jupiter.api.disabled」
なし:
パラメーター:
-{}

書き換えクイックフィックスアクションの作成

クイックフィックスでは、リライトアクションを使用します。

私は使う 変数を表示 Mustache 変数を表示して内容をプレビューする機能。

퀵픽스 설정

次に、プレースマーカーのコメントを作成するのに必要なコードを追加します。

장소 마커 주석을 만들기 위해 추가 코드 추가

すなわち、クイックフィックス:

利用可能な修正:
-名前:「Todo コメントパラメータを追加」
アクション:
-書き換え:
宛先:「{{{.}}} (\" TODO: ここに説明を追加\」)」
ターゲット:「自己」

センセイ・イン・アクション

実際のレシピ作成プロセスを紹介する短いビデオを作成しました。

요약

書き換えクイックフィックスを作成する場合、書き換えたいコード要素を検索できると簡単になります。なぜなら、それがアクションの対象となるセルフエンティティになるからです。

この例では、書き換えアクションを使用して注釈を修正しました。リライトは、どのコード要素にも適用できる汎用アクションで、デフォルトとして検討するとよいでしょう。

리소스 표시
리소스 표시

보고서를 다운로드하려면 아래 양식을 작성해 주세요.

당사 제품 및/또는 관련 보안 코딩 주제에 관한 정보를 발송할 수 있도록 허락해 주십시오. 당사는 고객의 개인정보를 항상 세심한 주의를 기울여 처리하며, 마케팅 목적으로 타사에 판매하지 않습니다.

발신
scw 성공 아이콘
scw 오류 아이콘
양식을 제출하려면 '분석' 쿠키를 활성화해 주세요. 설정이 완료되면 다시 비활성화해도 됩니다.

このブログ記事では、次のことを行います。

  • 注釈の検索と照合のデモンストレーション
  • 口ひげテンプレートを使ったアーメン注釈

Senseiは、問題のあるコードパターンを照合し、合意された実装に合わせて修正する機能を提供します。この例では、問題のあるコードパターンとしてパラメーターなしの @Disabled を使用しています。

無効化されたテスト注釈

特定の理由なしにテストを無効にすると、無効にした理由を忘れてしまうため、長期的には問題になる可能性があります。


@Disabled
void このテストメソッドには無効な理由がありません () {
Assertions.fail (「このテストは無効になっているため、実行すべきではありません」);
}

リスクは、時間が経つにつれてコードベースが移動し、無効になったテストがコードの目的に沿って更新されず、最終的には冗長で無関係になり、二度と有効にならない可能性があることです。

コードレビューでは、注釈パラメータとして説明的な説明を追加するのが良いとよく指摘されます。


@Disabled (「理由を追加したことを示すために無効にされました」)
void このテストメソッドは無効になっています。Reason () {
Assertions.fail (「このテストは無効になっているため、実行すべきではありません」);
}

先生のレシピ

@Disabled が説明なしに追加されたことを検出するレシピと、それを無効にした理由を説明する実際の理由を追加することを思い出させるクイックフィックスを書くことができます。

これから何をするかを考えるとき、私は次のことをしなければなりません。

  • パラメータなしで Disabled アノテーションと一致させる
  • Disabled アノテーションを変更して、「TODO: ここに説明を追加」というマーカーテキストの付いたパラメーターが含まれるようにします

警告レシピの作成

Alt+Enterを使用して新しいレシピを作成します。

새 레시피 함수 만들기

次に、一般情報に基本的な説明文を追加します。

일반 설정

ルールを警告にすると、一致するコードはすべて強調表示されますが、目立つエラーとしては表示されません。

규칙을 경고로 만들기

注釈を探す

レシピエディターで、注釈と一致するように検索を変更します。

これにより、プレビュー内のすべての注釈が強調表示されます。

레시피 편집기

それが済んだら、アノテーションのタイプでフィルタリングしたいと思います。

Disabledを使うこともできますが、JUnit 5のアノテーションとしか一致しないように、クラスをパッケージで完全に修飾します。ソースコードはプレビューに表示されているので、これを実際のコードから簡単にコピーして貼り付けることができ、タイプミスを防ぐことができます。

次に、パラメータなしで注釈だけを一致させたいのですが、GUIを使用してそれを行うことができます。

레시피 설정

すなわち、検索:

検索:
注釈:
タイプ:「org.junit.jupiter.api.disabled」
なし:
パラメーター:
-{}

書き換えクイックフィックスアクションの作成

クイックフィックスでは、リライトアクションを使用します。

私は使う 変数を表示 Mustache 変数を表示して内容をプレビューする機能。

퀵픽스 설정

次に、プレースマーカーのコメントを作成するのに必要なコードを追加します。

장소 마커 주석을 만들기 위해 추가 코드 추가

すなわち、クイックフィックス:

利用可能な修正:
-名前:「Todo コメントパラメータを追加」
アクション:
-書き換え:
宛先:「{{{.}}} (\" TODO: ここに説明を追加\」)」
ターゲット:「自己」

センセイ・イン・アクション

実際のレシピ作成プロセスを紹介する短いビデオを作成しました。

요약

書き換えクイックフィックスを作成する場合、書き換えたいコード要素を検索できると簡単になります。なぜなら、それがアクションの対象となるセルフエンティティになるからです。

この例では、書き換えアクションを使用して注釈を修正しました。リライトは、どのコード要素にも適用できる汎用アクションで、デフォルトとして検討するとよいでしょう。

온라인 세미나 보기
시작하자
더 알아보세요

아래 링크를 클릭하여 이 자료의 PDF를 다운로드하십시오.

Secure Code Warrior는 소프트웨어 개발 라이프사이클 전반에 걸쳐 코드를 보호하고 사이버보안을 최우선으로 하는 문화를 구축하는 데 도움을 드립니다. 애플리케이션 보안 관리자, 개발자, CISO 또는 보안 담당자이든, 안전하지 않은 코드와 관련된 위험을 줄이는 데 도움을 드립니다.

보고서 표시데모 예약
리소스 표시
공유:
링크드인 브랜드사회적x 로고
더 관심이 있으신가요?

공유:
링크드인 브랜드사회적x 로고
저자
앨런 리처드슨
게시일: 2020년 10월 26일

앨런 리처드슨은 20년 이상 개발자로서 테스터부터 테스트 책임자에 이르기까지 테스트 계층의 모든 수준에서 경험을 쌓아왔습니다.Secure Code Warrior 팀과 직접 협력하여 고품질의 안전한 코드 개발을 개선하고 있습니다. 앨런은 『Dear Evil Tester』와 『Java for Testers』를 포함한 4권의 책의 저자입니다. 또한 앨런은 테크니컬 웹 테스트와 Java를 사용한 Selenium WebDriver 학습에 도움이 되는 온라인 교육 과정도 제작했습니다.앨런은 SeleniumSimplified.com, EvilTester.com, JavaForTesters.com, CompendiumDev.co.uk에 글과 교육 동영상을 게시하고 있습니다.

공유:
링크드인 브랜드사회적x 로고

このブログ記事では、次のことを行います。

  • 注釈の検索と照合のデモンストレーション
  • 口ひげテンプレートを使ったアーメン注釈

Senseiは、問題のあるコードパターンを照合し、合意された実装に合わせて修正する機能を提供します。この例では、問題のあるコードパターンとしてパラメーターなしの @Disabled を使用しています。

無効化されたテスト注釈

特定の理由なしにテストを無効にすると、無効にした理由を忘れてしまうため、長期的には問題になる可能性があります。


@Disabled
void このテストメソッドには無効な理由がありません () {
Assertions.fail (「このテストは無効になっているため、実行すべきではありません」);
}

リスクは、時間が経つにつれてコードベースが移動し、無効になったテストがコードの目的に沿って更新されず、最終的には冗長で無関係になり、二度と有効にならない可能性があることです。

コードレビューでは、注釈パラメータとして説明的な説明を追加するのが良いとよく指摘されます。


@Disabled (「理由を追加したことを示すために無効にされました」)
void このテストメソッドは無効になっています。Reason () {
Assertions.fail (「このテストは無効になっているため、実行すべきではありません」);
}

先生のレシピ

@Disabled が説明なしに追加されたことを検出するレシピと、それを無効にした理由を説明する実際の理由を追加することを思い出させるクイックフィックスを書くことができます。

これから何をするかを考えるとき、私は次のことをしなければなりません。

  • パラメータなしで Disabled アノテーションと一致させる
  • Disabled アノテーションを変更して、「TODO: ここに説明を追加」というマーカーテキストの付いたパラメーターが含まれるようにします

警告レシピの作成

Alt+Enterを使用して新しいレシピを作成します。

새 레시피 함수 만들기

次に、一般情報に基本的な説明文を追加します。

일반 설정

ルールを警告にすると、一致するコードはすべて強調表示されますが、目立つエラーとしては表示されません。

규칙을 경고로 만들기

注釈を探す

レシピエディターで、注釈と一致するように検索を変更します。

これにより、プレビュー内のすべての注釈が強調表示されます。

레시피 편집기

それが済んだら、アノテーションのタイプでフィルタリングしたいと思います。

Disabledを使うこともできますが、JUnit 5のアノテーションとしか一致しないように、クラスをパッケージで完全に修飾します。ソースコードはプレビューに表示されているので、これを実際のコードから簡単にコピーして貼り付けることができ、タイプミスを防ぐことができます。

次に、パラメータなしで注釈だけを一致させたいのですが、GUIを使用してそれを行うことができます。

레시피 설정

すなわち、検索:

検索:
注釈:
タイプ:「org.junit.jupiter.api.disabled」
なし:
パラメーター:
-{}

書き換えクイックフィックスアクションの作成

クイックフィックスでは、リライトアクションを使用します。

私は使う 変数を表示 Mustache 変数を表示して内容をプレビューする機能。

퀵픽스 설정

次に、プレースマーカーのコメントを作成するのに必要なコードを追加します。

장소 마커 주석을 만들기 위해 추가 코드 추가

すなわち、クイックフィックス:

利用可能な修正:
-名前:「Todo コメントパラメータを追加」
アクション:
-書き換え:
宛先:「{{{.}}} (\" TODO: ここに説明を追加\」)」
ターゲット:「自己」

センセイ・イン・アクション

実際のレシピ作成プロセスを紹介する短いビデオを作成しました。

요약

書き換えクイックフィックスを作成する場合、書き換えたいコード要素を検索できると簡単になります。なぜなら、それがアクションの対象となるセルフエンティティになるからです。

この例では、書き換えアクションを使用して注釈を修正しました。リライトは、どのコード要素にも適用できる汎用アクションで、デフォルトとして検討するとよいでしょう。

목차

PDF 다운로드
리소스 표시
더 관심이 있으신가요?

앨런 리처드슨은 20년 이상 개발자로서 테스터부터 테스트 책임자에 이르기까지 테스트 계층의 모든 수준에서 경험을 쌓아왔습니다.Secure Code Warrior 팀과 직접 협력하여 고품질의 안전한 코드 개발을 개선하고 있습니다. 앨런은 『Dear Evil Tester』와 『Java for Testers』를 포함한 4권의 책의 저자입니다. 또한 앨런은 테크니컬 웹 테스트와 Java를 사용한 Selenium WebDriver 학습에 도움이 되는 온라인 교육 과정도 제작했습니다.앨런은 SeleniumSimplified.com, EvilTester.com, JavaForTesters.com, CompendiumDev.co.uk에 글과 교육 동영상을 게시하고 있습니다.

더 알아보세요

Secure Code Warrior는 소프트웨어 개발 라이프사이클 전반에 걸쳐 코드를 보호하고 사이버보안을 최우선으로 하는 문화를 구축하는 데 도움을 드립니다. 애플리케이션 보안 관리자, 개발자, CISO 또는 보안 담당자이든, 안전하지 않은 코드와 관련된 위험을 줄이는 데 도움을 드립니다.

데모 예약[다운로드]
공유:
링크드인 브랜드사회적x 로고
리소스 허브

시작하기 위한 리소스

기타 게시물
리소스 허브

시작하기 위한 리소스

기타 게시물