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

Javaシステム開発効率化、ソースコード品質向上のためのJavaテストツール

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

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

Javaシステム開発における
ソースコード品質向上のトータルソリューション


Java「静的解析」「単体テスト」「カバレッジ計測」の決定版


Java開発でこんな経験はありませんか?


  • 致命的なバグがプロジェクトの終盤にみつかる
  • コードレビューの質を向上、効率化したい

静的解析・フロー解析
コードレビューを自動化して致命的なバグを早期発見​
約4,000種類のルールに従ってJavaソースコードを静的に解析し、違反している箇所をレポート、Javaソースコードの品質向上と問題修正の効率化を促進します。


  • スキルがなくてJUnitテストが始められない
  • JUnitテストは作成、メンテナンスに工数がかかりすぎる

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


  • テスト不足がないか不安
  • システムテストの品質を定量的に評価したい

アプリケーションカバレッジ計測
システムテストのカバレッジ計測でテストの抜け漏れを可視化
テストコードは不要で、手動またはテスト自動化ツールで実行されたUIテストのカバレッジを計測。テストの精度向上やエビデンス作成工数を削減します。


  • 検出した静的解析違反の修正を効率化したい
  • 生成AIを使ったコードの改善に興味がある

生成AIとの連携
生成AIとの連携で静的解析違反の修正と単体テストの改善を効率化
JtestとOpenAI、およびAzure OpenAIを連携させることで、静的解析で検出された違反の修正やテストコードの改善を効率化します。


導入事例

みずほリサーチ&テクノロジーズ株式会社様導入事例

開発プロジェクトの効率化と品質向上施策として 「バグスキャン自動化サポート」サービスを実施 dotTEST/Jtestにより静的解析が現場改善の契機に

株式会社みずほトラストシステムズ様導入事例

高い信頼性が求められる金融システム開発を支えるテストツール活用法とは?

 

静的解析・フロー解析

コードレビューを自動化して致命的なバグを早期発見​

大規模・複雑化したプログラムで、不具合をみつけるのは非常に困難な作業です。特にNullPointerExceptionや、クロスサイトスクリプティングなどアプリケーションの致命的な不具合に直結するコードのバグは、複数のクラス・メソッドにまたがる「特定のパス」を実行したときにのみ発生することも多く、従来の目視レビューで発見するのは不可能に近いとも言えます。Jtest の静的解析・フロー解析機能では約4,000 種類のルールに従ってJavaソースコードの静的解析を自動化、違反しているコードをレポートします。

また、Jtest には PCI DSSやOWASP TOP 10、CERTといった国際的なセキュリティ基準をチェックするルールが搭載されており、セキュリティに特化したコードのチェックも自動化することができます。

Jtest を利用した静的解析の自動化によるコードレビューを効率化し、従来の目視によるコードレビューでは仕様の準拠チェックなどの高度なレビューに注力することでコードレビュー全体の質を向上することができます。

コードレビューを自動化して致命的なバグを早期発見​

単体テストアシスタント

JUnitテストコード作成支援機能で工数を33%削減

単体テストアシスタントは、メソッド単位でテストを行い品質の低下やバグの混入を防止できるため、ソフトウェアの品質を確保するうえでとても優れたテストです。さらに、テスティングフレームワークJUnitを利用することはテストを自動化して効率化できたり、テストコードをエビデンスとして残したり、一度作成したテストコードを回帰テストで利用できるなどのメリットがあります。一方、JUnitテストコード作成やメンテナンスの工数が大きな障壁となってJUnitの導入がうまくいかないという声も多く耳にします。

Jtestには、JUnitテストコード作成や実行、メンテナンスを効率化するための単体テストアシスタント機能が搭載されており、JUnitを利用した単体テストに慣れていない開発者でもすぐに単体テストを始めることが可能です。単体テストアシスタント機能により平均で33%の工数削減となった検証結果もあります。

JUnitテストコード作成支援機能で工数を33%削減

 

アプリケーションカバレッジ計測

システムテストのカバレッジ計測でテストの抜け漏れを可視化

システムテストは、開発の後工程で、要件や仕様書で定められた機能が正しく実装されているかを確認するために行います。一般的に、業務に合わせてさまざまなデータのパターンやテストシナリオを用意して手動によるGUI操作や機能テスト自動化ツールを使って行われます。
しかし、十分なテストデータやテストシナリオを用意したと思っても、実行されたシステムテストですべての機能をテストできているとは限りません。 例えば、システムのリリース後に非常にシンプルなテストで検出されるはずだった不具合が見つかって困った経験はありませんか?

Jtestのアプリケーションカバレッジ計測機能では、システムテスト中にアプリケーションのソースコードカバレッジを計測することができます。実行したテストシナリオ毎または全体で、テストによってソースコードのどこが実行されたのか、アプリケーションをどのくらいカバーしたのか、といったテストの網羅性を可視化してシステムテストの不足を確認、テストの品質を定量的に評価できます。

システムテストのカバレッジ計測でテストの抜け漏れを可視化

 

生成AIとの連携

生成AIとの連携で静的解析違反の修正と単体テストの改善を効率化

静的解析ツールの導入を成功させる上で大きな障害となるのは、大量に検出した違反の確認と修正に多くの時間が必要とされることです。特に大規模なアプリケーションや古いコードが残っているレガシーなアプリケーションでは、静的解析で検出される違反の数が多くなる傾向があります。
Jtestの生成AIとの連携機能では、Jtestの静的解析をOpenAIまたはAzure OpenAIと統合することで、検出した違反の解説と修正案を生成し、大量の違反に優先度をつけることができます。これにより、ソースコードの正確な修正を効率化することができます。

さらに、単体テストアシスタント機能では、既存のテストコードをパラメータライズテストに変換したり、エラーケースや境界値のテストを自動生成するなど、アプリケーションに必要なテストの改善を効果的に行い、カバレッジの向上、さらには開発プロセスの品質と効率性の向上を実現します。

※Jtestの生成AIとの連携機能にはOpenAIおよびはAzure OpenAIの利用契約は含まれておりません。利用者は個別に契約する必要があります。

体験版・資料


Parasoft社製品について

テクマトリックスは、Parasoft社製品の国内総販売代理店として、ソフトウェア開発に携わるすべてのお客様の課題を解決する最適なツールとして、Jtestの販売、マーケティング、ユーザーサポートを実施しています。

Parasoft

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

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

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

    03-4405-7853

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

お問い合わせ

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