Java対応静的解析・単体テストツール Jtest

Java対応静的解析・単体テストツール

Jtestは、テスト工数の大幅削減とセキュアで高品質なJavaシステムの開発を強力にサポートするJava対応テストツールです。2,000個以上のコーディング規約をもとにソースコードを静的に解析し、プログラムの問題点や処理フローに潜む検出困難なエラーを検出します。さらに、JUnitを用いた単体テストについて、作成、実行、テストカバレッジ分析、テスト資産の管理といった単体テストに係る作業をサポートし、単体テストの効率化を促進します。

  • ソフトウェア品質保証
  • ソフトウェア品質向上
  • ソースコード解析
  • テストカバレッジ
  • テスト自動化
  • 単体テスト

Jtestは、Java開発における品質向上とテスト効率化を
 幅広くサポートするJava特化型ツールです

Jtestの導入効果

高レベルのコードレビューを自動化しバグを早期に発見​
目視レビューの大部分を自動化し、セキュアコーディング規格(PCI DSS、CERT、OWASP)も考慮した高レベルのレビューが可能です。 また、複雑なプログラムのパスをシミュレートしバグを早期に発見します。

開発者のJUnitコード生成を強力にサポートし工数を33%削減
JUnitのテンプレートを自動生成し、機能実装・メンテナンスに工数がかかるJUnitコードの開発工数を大幅に削減できます。テストコード作成の時間を削減し、本来の開発作業に時間を使えるようになります。

結合テスト、システムテストのテストケースの抜け漏れを可視化​
結合テスト、システムテストで実施されるテストがコードをどの程度網羅しているかを可視化できます。
 

高レベルのコードレビューを自動化しバグを早期に発見​

大規模・複雑化したプログラムでは、不具合の検出は非常に困難な作業です。特にNullPointerExceptionや、クロスサイトスクリプティングにつながるバグは、致命的な不具合に直結します。さらに、これらのバグは、多くの場合、複数のクラス・メソッドにまたがる「特定のパス」を実行したときにのみ発生するため、目視のレビューで発見するのは不可能に近いと言えるでしょう。 また、昨今話題となっているセキュアコーディングの準拠チェックは、PCI DSSやOWASP TOP 10、CERTといった国際的なセキュリティ基準の観点から準拠ルールを決める必要があります。Jtestは、前述のセキュリティ基準をチェックする静的解析ルールが搭載されており、コードのチェック作業を自動化します。これにより、レビュワーのリソースを仕様チェックといった高度なレビューに注力できるようになります。

高レベルのコードレビューを自動化しバグを早期に発見​

静的解析

複数のクラスに渡った複雑なパスも検証可能

複数のクラスに渡った複雑なパスも検証可能

アプリケーションを実行することなく、 Null Pointer Exception やリソースリークのような実行しなければ発見するのが難しい問題も、静的に検証/発見します。

インジェクションやクロスサイトスクリプティング(XSS)などの脆弱性を検出

インジェクションやクロスサイトスクリプティング(XSS)などの脆弱性を検出

処理フローを検証し、これらのセキュリティ上危険なコード箇所を指摘します。

2,000種類のコーディングルールでソースコードを解析

2,000種類のコーディングルールでソースコードを解析

ソースコードを解析し、メソッドや文字列リテラルの重複やパフォーマンスに影響するガーベッジコレクションの問題、JDKの異なるバージョンや異なるOSへの移植性の問題などを検出します。

ソースコードの複雑度の指標となるメトリクスを計測

ソースコードの複雑度の指標となるメトリクスを計測

メソッド数、オブジェクトの結合度、サイクロマティック複雑度など約80種類のメトリクスをレポートします。

独自のルールセットの作成やコーディングルールの追加・編集が可能

独自のルールセットの作成やコーディングルールの追加・編集が可能

ルールを作成/編集したり、独自のルールセットを作成できます。

開発者のJUnitコード生成を強力にサポートし工数を33%削減

単体テストは、ソフトウェアの品質を確保する上で、とても優れたテストです。メソッド単位でテストを行うことにより、品質の低下やバグの混入を防止できます。また、JUnitなどの広く使われているテスティングフレームワークがあるため、効率的にテストを実施したり、テストコード自体をテストのエビデンスとして利用することが可能です。 一方で、テストコード作成の工数が障壁となり、JUnitの導入がうまくいかないという声も耳にします。Jtestには、JUnitを用いた単体テストのテストコード作成やテスト環境の準備を効率化するための単体テストアシスタント機能が搭載されています。JUnitによる単体テストに慣れていない開発者でもすぐに単体テストを始めることが可能です。

開発者のJUnitコード生成を強力にサポートし工数を33%削減

JUnit 単体テスト アシスタント

テストの失敗やテストケースの動作確認の手間を削減

テストの失敗やテストケースの動作確認の手間を削減

処理の経路やテストメソッド内の変数の値、モックの呼び出し、例外の有無など、JUnitの単体テスト実行時に、さまざまなデータを収集します。

JUnitの単体テストの実施・未実施の箇所からテスト漏れを防止

JUnitの単体テストの実施・未実施の箇所からテスト漏れを防止

JUnitの単体テストの実行/失敗件数やテストの実施箇所/未実施箇所を可視化し、テストが漏れている箇所を明らかにします。

JUnit初心者のテスト実施をサポート

JUnit初心者のテスト実施をサポート

JUnitに慣れていない、またはこれまでにJUnitの利用に苦労されてきた開発者が単体テストをすぐに行えるよう、Jtestがテストの作成を支援します。

結合テスト、システムテストのテストケースの抜け漏れを可視化

システムテストは、開発の後工程で、要件や仕様書で定められた機能が正しく実装されているかを確認するために行います。このテストは、アプリケーションの種類や業務に関わらず、必ず行われますが、一般的に、業務に合わせてさまざまなデータのパターンやテストシナリオを用意し、手動でGUIを操作したり、機能テスト自動化ツールを使って行われます。しかし、十分なテストデータやテストシナリオを用意したと思っても、実行されたシステムテストがすべての機能をテストできているとは限りません。 システムリリース後に非常にシンプルなテストで検出されるはずだったバグが発生して困った経験はありませんか?
Jtestは、実行中のアプリケーションを監視し、ソースコードのカバレッジを計測する機能が搭載されています。Jtestのカバレッジ計測機能を利用することにより、実行したテストシナリオによって、ソースコードのどこが実行されたのか、アプリケーションをどのくらいカバーしたのか、といったテストの網羅性を知るための情報を提供し、可視化します。

結合テスト、システムテストのテストケースの抜け漏れを可視化

カバレッジ計測

システムテスト時もカバレッジを計測可能

システムテスト時もカバレッジを計測可能

システムテストを行いながら、カバレッジを計測することでテストの抜け漏れを確認できます。

TestNGやJUnitの単体テストを実行 C0カバレッジを計測

TestNGやJUnitの単体テストを実行 C0カバレッジを計測

単体テスト実行時に行カバレッジ(C0)を計測。カバレッジを確認しながらテストを実施することで、信頼性の高いテストが実施できます。

体験版・資料


Java対応静的解析・単体テストツール Jtestに
関するお問い合わせ

  • テクマトリックス株式会社
    東京本社

    ソフトウェアエンジニアリング事業部

    03-4405-7853

メールでのお問い合わせ
parasoft-info@techmatrix.co.jp

お問い合わせ

製品についてやテクマトリックスについてなど、
こちらよりお気軽にお問い合わせいただけます。