コード実装中の解析はFindBugs、コミット後の解析はJtest
さらに、JtestはFindBugsと組み合わせて併用することで、効率的に精度の高いソースコード解析を行うことができる。
天久氏が推奨する運用方法は、コード実装中に行うスピード重視の解析にFindBugsを、より深いバグの検出を重視するコミット後の解析にはJtestを使うことだ。これにより、実装中に書いたコードをその場でチェックし、FindBugsが取りこぼしたバグをJtestで一気に刈り取る、といった運用が可能になる。
セキュリティやリソースリークのバグを減らし、レガシーコードの検証を楽に
Java開発プロジェクトに参画している開発者はもちろん、品質保証部門やシステム開発の発注元や元請けのチームなどでも、セキュリティやリソースリークなどのバグに苦労している。天久氏は「レガシーコードの検証が必要、コーディング規約チェックをしたい人は、ぜひ一度Jtestを試してほしい」と勧める。セキュリティやリソースリークのバグは、本来なるべく早い工程で取り除くことが望ましい。なぜなら、システムテストなどの後工程で発生するとスケジュールに大きな影響が出るからだ。実際にはセキュリティ脆弱性を取り除くための工程は存在しないことが多く、事後対応になりがちだ。だが、Jtestを導入すればコード解析で検出できるようになり、大きな効果が得られるはずだ。
また、長年運用されているシステムの場合はテスト資産が存在しないことも多い。そんなレガシーコードもJtestなら、静的フロー解析の実施によってバグ検出が可能になる。さらにコーディング規約チェックもJtestは得意としている。Jtestであれば社内で規定した規約に合わせたルールの作成が可能で、コードレビューの手間を削減することができる。具体的には「社内コーディングルールの標準化の仕掛けとしても使える」と天久氏。近年、ユーザー企業の多くがシステム開発を内製化する動きがあるが、大きなプロジェクトだと自社の社員だけでは人員が不足するため、複数のパートナー企業の支援を受けることになる。この場合気になるのがバラバラのコーディングルールだ。Jtestをコーディングルールの標準化の仕掛けとして活用すれば、ソフトウェア品質をより高められるというわけだ。
現在FindBugsを導入しているが、ツールで見つけられないバグの検出を目視で行っているため負荷がかかっている、もっと効率的に静的解析を行いたい、品質を高めたいというのであればぜひ、Jtestを試してほしい。きっと満足する効果が得られるはずだ。
Jtestの無料体験版を入手!
Jtestの無料体験版を配布しております。以下のリンクからダウンロード可能です。
関連記事
お問い合わせ
テクマトリックス株式会社
- Java対応静的解析・単体テストツール「Jtest」
- コーポレートサイト
- TEL:03-4405-7853