6

一部のコードを「バグに関連する」ものとしてマークできる標準の Java アノテーションを探していますPROJECT-312。目標は、コードのどの部分が変更されたか、またはバグによって影響を受けたかを確認できるレポートを作成できるようにすることです。これにより、たとえば、多くのバグが蓄積する「ホット スポット」を確認できます。または、IDE から JIRA/BugZilla に移動して、バグの内容を簡単に確認できるようになります。

使用できる/使用すべき標準の注釈はありますか、それとも独自に作成する必要がありますか?

PS: Mylyn / Tasktopが追跡を行ってくれることは承知しています。これらのツールは、人々の毎日の働き方を大きく変えてしまうため、現時点では破壊的すぎると思います。

4

2 に答える 2

3

オラクルのアプローチ

Java API 仕様には、ソフトウェア品質保証が完全な Java Compatibility Kit (JCK) テストを記述できるようにするのに十分なアサーションが含まれている必要があります。

これは、doc コメントが SQA による適合性テストのニーズを満たさなければならないことを意味します。コメントは、バグや、現在仕様外の実装がどのように機能するかを文書化するべきではありません。

公式のJavaDocガイドラインから:

コードのバグは、API 仕様ではなく実装のバグです。コードのバグとその回避策は、多くの場合、バグ レポートで個別に配布されます。ただし、特定の実装のドキュメントを生成するために Javadoc ツールが使用されている場合は、この情報をドキュメント コメントに含めて、メモまたはカスタム タグ (@bug など) で適切に区切ると非常に便利です。

したがって、基本的には、ドキュメントとバグ報告を混在させないでください。コメントで特別なカスタム タグを使用して解析します。バグ レポートを成功させるために、それ以上のものは必要ありません。

また、Eclipse Jira Connect または同様のツールを使用する@bugと、TODOコメントをバグ/タスク チケットに自動的に変換できます。

アップデート

必要に応じて、いくつかのカスタム アノテーションを使用できます。ニーズに合わせて文書化し、チーム全体で実施します。詳しくはこちら

@Target({ ElementType.TYPE })
@Retention(RetentionPolicy.CLASS)
// Unavailable through reflection.
public @interface classbug {}
// gives you the @classbug annotation.

@Target({ ElementType.METHOD })
@Retention(RetentionPolicy.CLASS)// Unavailable through reflection.
public @interface methodbug {}
// gives you the @methodbug annotation.
于 2013-05-22T09:24:06.353 に答える