このリリースでは、Jtest の単体テスト機能の拡張とセキュリティ コンプライアンス ソリューションの強化に重点が置かれました。

IDE のサポート

次の IDE のサポートが追加されました。

  • Eclipse 2019-06 (4.12)
  • Eclipse 2019-09 (4.13)

単体テストの拡張

JUnit 5 のサポート

Jtest が JUnit 5 をサポートするようになりました。デスクトップとコマンドラインで、JUnit 5 テストを実行してカバレッジ情報を収集できます。さらに、デスクトップ ユーザーは、単体テスト アシスタントを使用して JUnit 5 テストを作成および強化し、Eclipse または IntelliJ IDEA でテスト影響分析を実行できます。

JUnit 4 と JUnit 5 の両方のテストを含むプロジェクトの処理を支援するため、またはフレームワークの以前のバージョンから JUnit 5 へのテストの移行を支援するために、 JUnit 5 Best Practices テストコンフィギュレーションが追加されました。「ビルトイン テスト コンフィギュレーション」を参照してください。

Junit 3 や JUnitParams 10.0.4 などのレガシー フレームワークで作成されたテストに関連する履歴結果は、DTP では使用できなくなる可能性があります。

セキュリティ コンプライアンス パックの拡張

Common Weaknesses Enumeration(CWE) の最新バージョンがサポートされました。CWE Top 25 2019 and On the Cusp ガイドラインを含む CWE 3.4 のサポートを有効にするために、新しい静的解析ルールを追加し、既存のルールを拡張しました。以下の「追加または更新されたテスト コンフィギュレーション」セクションを参照してください。

追加または更新されたテスト コンフィギュレーション

以下のテスト コンフィギュレーションが追加されました。

  • CWE 3.4
  • CWE Top 25 2019
  • CWE Top 25 + On the Cusp 2019
  • JUnit 4 Best Practices

  • JUnit 5 Best Practices

TDD テスト コンフィギュレーションの名称は、TDD Best Practices に変更されました。

削除されたテスト コンフィギュレーション

  • CWE 3.2
  • CWE-SANS Top 25 2011
  • CWE SANS Top 25 2011 + On the Cusp
  • Unit Test Assistant
  • Unit Testing Best Practices

その他の変更

  • -project.jsonpath オプションが追加されました。-project.* オプションを使って .json ファイルを手動で作成する場合、-project.jsonpath オプションを設定して、ファイルのデフォルトの名前と場所をカスタマイズできます。詳細については「カスタム .json データ ファイルの作成」を参照してください。
  • カバレッジ データ ファイルの構造を変更して、静的カバレッジと動的カバレッジを一致させるメカニズムを強化しました。その結果、以前のバージョンの Jtest で生成されたカバレッジ データ ファイルを分析できなくなりました。カバレッジ データを収集してマージするには、インフラストラクチャが同じバージョンであるとすべての Jtest インスタンスが認識するようにしてください。 
  • license.network.enabled オプションの名称が license.network.use.specified.server に変更されました。「ライセンスの設定」を参照してください。
  • メモリの使用を最適化して、パフォーマンスを向上させました。

追加または更新された静的解析ルール

以下のルールが追加されました。

ルール IDヘッダー
BD.SECURITY.TDCODEコードを生成するメソッドで使用する前に、汚染されている可能性があるデータを検証する
BD.SECURITY.TDSESSION信頼されていないデータを HTTP セッションに格納しない

FORMAT.MCH

すべてのソース ファイルに意味のあるファイル ヘッダー コメントを含める

JUNIT.AUL

JUnit テストでループを使用しない

JUNIT.IGNORE

@Ignore を使用する JUnit 5 テスト クラスに @ExtendWith(IgnoreCondition.class) または @EnableJUnit4MigrationSupport アノテーションがあることを確認する

JUNIT.RPL5

JUnit 5 にテストを移行する場合は、JUnit 4 のアノテーションを使用しない

JUNIT.TDIR

JUnit 5 テストで TemporaryFolder ルールを使用しない

SECURITY.UEHL.DCEMSL

Seam Logging API を使用してメッセージをログに記録する場合、信頼されていない入力を使用しない

SECURITY.WSC.BUSSB

外部プロセスが出力またはエラー ストリームをブロックするのを防ぐ

SECURITY.WSC.PBRTE

必ず実行コマンドへの絶対パスを指定する

SERIAL.VOBD

デシリアライズの前にオブジェクトを検証する

SPRING.DCSRFJAVA

CSRF 防護を無効にしない

SPRING.DCSRFXML

CSRF 防護を無効にしない

SPRING.REQMAP

@RequestMapping アノテーションがあるメソッドに呼び出す HTTP メソッドが指定されていることを確認する

さらに、メソッド内のメソッド呼び出しの数を計測するために NOMCIM メトリクスが追加されました。


解析結果の向上のため、以下の静的解析ルールが更新されました。

  • BD.SECURITY.TDFNAMES
  • CODSTA.BP.NTX
  • FORMAT.CBRACE
  • FORMAT.LL
  • GC.OSTM
  • GLOBAL.ACD
  • JUNIT.AEAT
  • JUNIT.ANAT
  • JUNIT.ANBA
  • JUNIT.ASAT
  • JUNIT.ASSERT
  • JUNIT.AST
  • JUNIT.CBA
  • JUNIT.DIR
  • JUNIT.ETCTA
  • JUNIT.FAIL
  • JUNIT.FICB
  • JUNIT.ISMTC
  • JUNIT.MAIN
  • JUNIT.OSIC
  • JUNIT.OSUM
  • JUNIT.OTDM
  • JUNIT.SIA
  • JUNIT.SIFN
  • JUNIT.TATC
  • JUNIT.TEST
  • JUNIT.UPJT
  • NAMING.NTEST
  • PB.TYPO.EB
  • SECURITY.WSC.ASAPI
  • SECURITY.WSC.DMDS
  • SECURITY.WSC.ICA
  • SECURITY.WSC.SL
  • SECURITY.WSC.STREP
  • TRS.ISTART
  • TRS.UCM

以下のルールの重要度レベルが変更されました。

  • SECURITY.WSC.ASAPI –重要度が 5 から 3 に上がりました。

以下のルールの出力メッセージが更新されました。そのため、以前に DTP で関連付けられたこれらのルールの抑制はもう利用できない場合があります。

  • BD.PB.CHECKRET
  • JUNIT.AEAT

  • JUNIT.ANAT

  • JUNIT.ASAT

  • JUNIT.FAIL
  • JUNIT.OSUM
  • JUNIT.OTDM
  • SECURITY.WSC.ASAPI
  • TRS.ISTART

解決済みのバグおよび FR

バグ/FR ID説明
JT-70763Jtest 10.x で FORMAT.MCH ルールを実装するリクエスト
JT-70857非推奨ルールを含むドキュメント
JT-71241既存の終了コード 137 がレポートされていない理由を確認する
JT-71244仮想フォルダーとしてインポートするときに依存関係が見つからない
JT-71273「ソース セットごとに個別のモジュールを作成する」 オプションを使用して IntelliJ にインポートされたプロジェクトの空のテストスコープ
JT-71381事前/事後解析スクリプトの起動に失敗した場合に parasoft コンソールで問題の詳細が欠落
JT-71382Eclipse ランナーを介して実行された場合に jtestcli.bat が DTP からライセンスを取得できない
JT-71397FORMAT.LL ルールを拡張して、エディターと同じようにタブを処理する
JT-71592project.location パスが存在しない場合のエラー メッセージ
JT-71830ACD.java の GLOBAL.ACD ルールの NumberFormatException
JT-71831ArrayIndexOutOfBoundsException: PB.EB ルールの 0
UTA-3956名前の競合によりテスト クラスが作成されない
UTA-4459   Spring MVC テストが値ではなく定数名を使用する
UTA-4511 getClass または toString の呼び出しをモックしてはいけない
UTA-4529 dumb mode による推奨の不安定性
UTA-4529アノテーション値は、UTA 構文ツリーでは完全にサポートされていない
UTA-4554テスト ケースの作成中にクラスを逆コンパイルする際のパフォーマンスの問題
XT-36609パスワードに £ 文字があると、Parasoft ツールが DTP に接続できなくなる
XT-36611min オプションを使用した sim-link ソース コードの公開に失敗
XT-36843cpptestcli を使用する同時ビルドが、ライセンスをプルしようとしたときにタイムアウトを待たない
XT-36950XML Graphics Project の脆弱なライブラリを更新
XT-37358テストが 100% 成功した場合にレポートに 100% が表示されない

  • No labels