2011-09-06 2 views
7

私のコードでどのような種類のバグを発見するのに最適なツールを知りたいのですが。私はこれが理論的なものか、決して終わらないものなのかを知っているので、バグ報告の効率性(命名規則も含めて)を変更したいと思います。どのツールレポートや最大のバグ、そして業界で効果的に使用されているのかを言うことができます。私はfindbugについて聞いたことは本当に良いですか?Javaコードのバグを見つけるのに最も適したツールはどれですか?

+4

あなたの耳の間にあるものを使用してください。それは最も強力なものです。どの工作機械でも交換できません;-) –

+0

@Peter素敵なコメント...しかし、まったく初心者のときはいつも実用的ではありません。これらのツールは、後で使用できる脳という名前のツールのデータベースを増やすのに役立ちます.... findbugは私のコーディング練習を多く改良しました。 – amod

+3

確かに。しかし、あなたが実際にFindBugsの警告が出されている理由とそれらを避ける方法、つまりあなたの頭脳を使わなければならないより良いコードを書く方法を実際に学ばなければ、コードの数にかかわらず、より良い開発者にならないでしょう。あなたが使用する分析ツール。 –

答えて

9

FindBugsはおそらく最も顕著なものの1つで、試してみる価値があります。

命名規則などについては、CheckStyleをご覧ください。

+0

はい私はバグを見つけましたが、私たちはスタイルのバグはありません。チェックスタイルを進めてみると、私もそれを試してみましょう。 – amod

2

Findbugsはかなり良いです。しかし、コード品質を維持するためにソナーを使用することをお勧めします。 http://www.sonarsource.org/ これはmaven(ソナー:ソナー)とうまく統合されています。これ以外に、私はcheckstyle、pmd、findbugs et-allレポートを作成するためのmavenサイトの使用も、開発者を足元に保つのに役立つと信じています。

1

は、コードの修正を加えた回帰問題を発見するためのコードでの使いやすさ「バグ」

使用テストハーネスを見つけるための構文「バグ」

使用テストケースを見つけるために、コンパイラを使用します。

1

IntelliJでコード解析を使用することをお勧めします。それは多くの可能性のあるバグと改善を見つけるだけでなく、大量のコードを修正することが現実的になる多くのものを迅速に修正しています。

+0

標準的な命名規則も示していますか? – amod

+1

クイックフィックスの標準命名変換も同様です。すなわち、'public static final'がcamelCaseにある場合はハイライト(またはレポートに表示されます)し、その名前をUPPER_CASEに変更してすべての参照を変更することができます(コメント、文字列、ファイルの中でも) –

2

あなたが探しているものによって異なります。個人的には、Javaコードの静的分析を行うためにFindBugsPMDの組み合わせを使用します。しかし、私は最近、Eclipse plugin called CodePro Analytix by Googleを発見しました。

Javaコードの分析には、ソースコード分析とバイトコード分析の2種類があります。 PMDは、可能性のあるバグ、未使用コード、準最適コード、複雑な式、重複コードを見つけるためにソースコードを調べます。 FindBugsは、生成されたバイトコードを調べて、考えられるエラーを見つけます。アプリケーションの分析には両方とも不可欠です。

しかし、欠陥を見つけることに関しては、良いテストフレームワークと(必要であれば)模擬ライブラリに勝るものはありません。私はJUnitMockitoで成功しました。これにより、モジュールの単体テストを書くことができます。自動化されたツールやテスト手順を使用して、コードシステム、統合、およびスモークテストを作成することも重要です。そのため、コア機能をカバーして何かが壊れたときをすばやく確認できます。

関連する問題