- 2019.09.19
-
ソフトウェア品質保証
Java対応テスト自動化ツール「Jtest 10.4.2」の販売を開始
セキュリティ関連の静的解析ルールをコンプライアンスパックとして強化。JUnitの単体テストを効率化する単体テストアシスタント機能の強化とサブスクリプションライセンスの販売を開始
テクマトリックス株式会社(本社:東京都港区、代表取締役社長:由利孝、以下「テクマトリックス」)は、米国Parasoft Corporation (本社:米国カリフォルニア州、最高経営責任者:Elizabeth Kolawa、以下「Parasoft社」)が開発したJava 対応テスト自動化ツール「Jtest10.4.2」の販売を2019年9月19日より開始します。同時に、「Jtest10.4.2」の単体テストアシスタント機能を3か月間、5名様でご利用いただけるサブスクリプションライセンス「Jtest Unit Test Edition」の販売も開始します。
Jtestは、高品質なJavaシステムの開発とテスト工数の大幅削減を強力にサポートするJava対応テスト自動化ツールです。静的解析機能では、さまざまなカテゴリーに分類された1,000個以上のコーディングルールが実装され、それらのルールに基づく解析を行うことでプログラムに潜む問題の未然防止や保守性の向上が期待できます。さらに、クラスを横断して解析を行うフロー解析により、特定の処理フローに潜む例外やリソースリーク、セキュリティ脆弱性の可能性など、コードレビューでは検出困難な致命的な問題も検出します。単体テストアシスタント機能では、JUnitを用いた単体テストにおいて、JUnitで利用可能なテストテンプレートやモックの作成、テスト実行を効率化でき、単体テストにかかる工数を削減します。併せてJavaアプリケーション実行中のカバレッジ情報収集機能により、結合テストやUIテストなどのテストの抜け漏れを可視化でき、テストの網羅率向上にお役立ていただけます。
このたびのバージョンアップでは、JUnitを用いた単体テストをサポートする単体テストアシスタント機能や、セキュリティ脆弱性に関する静的解析機能が強化されました。単体テストアシスタント機能では、モックの自動生成機能が強化されたのに加えて、これまでオプションであったSpringフレームワークに対応したテストテンプレートの自動生成機能が標準搭載となりました。静的解析機能では、セキュリティ脆弱性やソースコードの品質に関連したコーディングルールやフロー解析ルールが追加されました。また、OWASP Top 10 2017やCWE3.1などの基準に対応した静的解析のルールやセキュリティ遵守レポートの生成などのセキュリティ脆弱性の検証に関連した機能を集約したセキュリティコンプライアンスパックオプション(別売)がご利用いただけるようになりました。また、Jtest Engine Editionでご利用いただけるレポートツール「Parasoft DTP」もバージョンアップされ、解析結果の視認性の向上や抑制機能などが強化されました。
「Jtest10.4.2」のリリースと同時に販売を開始する「Jtest Unit Test Edition」は、単体テストアシスタント機能をご利用いただけるサブスクリプションタイプのライセンスです。短期に集中的に実施することが多い単体テストで、より多くのお客様にご利用いただけるよう、5名様で3か月間利用できるライセンスとしました。本ライセンスの活用によりJUnitによる単体テストの、大幅な工数削減を期待いただけます。
テクマトリックスは、Parasoft社製品の国内総販売代理店として、Javaソフトウェア開発に携わるすべてのお客様の課題解決に最適なツールとして、Jtestの販売、マーケティング、ユーザーサポートなどの活動を強化してまいります。
Jtest 10.4.2 の新機能・改善点
単体テストアシスタント機能を強化。モック自動生成の拡張やアサーションの自動生成を追加。テストカバレッジ向上のヒントも表示
単体テストを効率化する単体テストアシスタント機能が強化されました。この機能はJUnitベースの単体テストに対して、テストメソッドのテンプレートやモックの自動作成などで単体テストを支援する機能です。本バージョンでは、モックの自動作成機能が拡張され、テスト対象クラスからアクセスできないフィールドを検知し、自動的にモックを生成するようになりました。これにより、複雑な依存関係のあるクラスのテストを容易にし、モック実装の手間の削減や単体テストに慣れない開発者の手助けを行います。また、テストを実行した時に未カバーコードがあると、それをカバーするためのヒントを表示して、テストケースの理解を助けます。さらにprivateメソッドのテストケース作成や、例外のアサーション作成の機能も追加されました。単体テストアシスタント機能を利用することにより、単体テスト作成の大幅な効率化を期待できます。Spring単体テストの自動作成、変更ベースのテスト機能を標準搭載
オプション機能(別売)だったSpring単体テスト自動作成機能と変更ベースのテスト機能が標準搭載されました。また、Eclipseに加えてIntelliJもサポートしました。- Spring単体テストの自動作成
Springフレームワークを利用したアプリケーションに対して、Spring独自の手順に沿ったテストケースのテンプレートを作成します。Springで単体テストを行うためには、Springの提供しているテストフレームワークを利用する必要がありますが、それを考慮したテストケーステンプレートが作成されるため、学習コストや、記述の手間を削減できます。 - 変更ベースのテスト
アプリケーションのソースコードを修正した際に、影響のあるテストケースを自動で検出します。そのため、テストの実行漏れの防止や、必要な範囲のみをテストすることによるテスト実行時間の削減が期待できます。
セキュリティコンプライアンスのルールを追加し、静的解析を強化
「Jtest10.4.2」ではいくつかの静的解析ルールが追加、改善されました。フロー解析では新たにメソッドの戻り値のチェックを統計的に行うルールをはじめ、3つのルールが追加されました。また、セキュリティ関連のルールが19個追加されるとともに、OWASP TOP 10 2017やPCI DSSといった7種類のセキュリティコンプライアンスに対応しました。【Jtest のセキュリティコンプライアンスルール】
- OWSP Top 10 -2017
- PCI DSS 3.2
- CERT for Java
- CWE3.2
- CWE SANS Top 25 2011
- CWE SANS Top 25 2011+On the Cusp
- UL 2900
静的解析や単体テストの結果を収集し、グラフやリストでビジュアルに表示する「Parasoft DTP」も強化
- フロー解析により検出された違反に対し、違反するまでのデータフローのトレース表示を強化
フロー解析により見つかった違反は、Jtestが論理的にプログラムを実行した結果であり、致命的な欠陥を見つけることができる非常に強力なメカニズムです。このたびのバージョンアップでは、フロー解析におけるデータフローのシミュレート結果がより詳しく表示されるようになりました。「なぜ条件演算子でtrueと判断されたのか」、「なぜ違反が発生しているか」の理解や、「違反の重要性」の判断が容易になりました。 - 違反エクスプローラ上から検出を抑制可能に
Parasoft DTPに登録された違反において、修正不要と判断された違反を違反エクスプローラ上から抑制できるようになりました。これにより次回以降の静的解析から違反として検出されなくなります。抑制はParasoft DTP内部で保持されるため、ソースコードに抑制のための修正を入力する必要ありません。また、プロジェクト共通の設定となるため、各開発者のローカルでのテストでも抑制が反映されます。 - コンプライアンスの遵守を促進するパッケージの追加
コンプライアンスパッケージを導入することにより、Jtestによる静的解析の結果からOWASP Top 10 2017やCWE 3.1、CWE SANS Top 25 2011に則った遵守サマリーレポートや逸脱のレポートをいつでも確認できるようになります。ガイドラインの遵守状況の説明責任を果たすことが容易になるだけでなく、未遵守箇所を早期に特定し必要な措置を講ずることにより、欠陥のあるソフトウェアに関連するビジネスリスクを排除することが可能になります。
Jtest Unit Test Editionの販売を開始
Jtestの機能の中から、Javaアプリケーション開発におけるJUnitを活用した単体テストを強力に支援する単体テストアシスタント機能のみをご利用いただける「Jtest Unit Test Edition」のご提供を開始します。単体テストが比較的短期間、かつ複数の開発者様での実装が多い点に着目し、フレキシブルな期間設定で多くのお客様にご利用いただけるよう、安価な費用にてご提供します。ライセンス
- 開発者5名/3か月/198,000円 (開発者1名あたり13,200円/月、税別)
※ノードロックライセンスの価格です。
Jtest Unit Test Editionの主な機能
- テストメソッドテンプレートの自動作成
テスト対象のメソッド単位でJUnitテストメソッドのテンプレートを作成します。呼び出しやパラメータの定義を自動的にテストメソッド内に記述するため、開発者は用意したテストデータに合わせてテンプレートを変更するだけで単体テストを実行できます。 - パラメータライズテストの自動作成
複数パターンの入力値を一回の実行で検証するためのパラメータライズドされたテストメソッドを作成します。同時に、テストケース用のテストデータとしてCSVファイルが自動で作成されます。 - アサーションの自動作成
テストの成功可否を判断するために使用するアサーションを自動作成します。テストメソッド実行時の値を期待値としたアサーションを作成します。また、テスト対象クラスを検証するためのアサーションのテンプレートも作成します。 - モックの自動作成
テスト対象メソッドの呼び出しに必要なオブジェクトをモック(Mockito, PowerMockを利用) として作成します。1つのオブジェクトだけではなく、モック化したオブジェクトが必要とするクラスオブジェクトをまとめてモック化します。 - Springフレームワークの単体テスト
Springの単体テストに必要な定形コードや、Springが提供するモックを使った単体テストケーステンプレートを作成します。
Jtest / Jtest Unit Test Editionの稼動環境
- Windows 64bit
Windows 7, Windows 10, Windows Server 2012, Windows Server 2016, Windows Server 2019 - Linux 64bit
Linux glibc 2.12以上 - プラグインできる統合開発環境
Eclipse 4.2 ~ 4.11, IntelliJ 2017.1 ~ 2019.1, NetBeans 8.1または8.2 - プラグインできるビルドツール
Apache Maven 3.0.3以上, Gradle 3.3以上, Apache Ant 1.7以上 - 解析対象のJavaのサポート
Java 1.3 ~ Java11
Jtestの詳細はこちらをご参照ください。
このページをPDFファイルでご覧いただく場合は、下の[ダウンロード]をクリックしてください。
関連するサービス・製品
本件についてお問い合わせ
テクマトリックス株式会社
東京本社ソフトウェアエンジニアリング事業部
03-4405-7853
- メールでのお問い合わせ
- parasoft-info@techmatrix.co.jp