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

Java のサポートの拡充

Java 11 のサポートが追加されました。

IDE およびビルド システムのサポートの拡充

以下のサポートが追加されました。

  • Eclipse 4.9、4.10、および 4.11
  • IntelliJ 2018.3 および 2019.1
  • Maven 3.6.0

プラットフォームのサポート

以下のサポートが追加されました。

  • Windows Server 2019

以下の OS はサポートされなくなりました。

  • Windows 8
  • Windows Server 2008

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

このリリースでは、セキュリティ標準やプラクティスへのコンプライアンス推進に役立つテスト コンフィギュレーションにすぐにアクセスできるセキュリティ コンプライアンス パックが導入されました。セキュリティ コンプライアンス パックには、以下のテスト コンフィギュレーションが含まれています。

  • CERT for Java
  • CWE 3.2
  • CWE SANS Top 25 2011
  • CWE SANS Top 25 2011+On the Cusp
  • OWASP Top 10-2017
  • PCI DSS 3.2
  • UL 2900

詳細は「ビルトイン テスト コンフィギュレーション」を参照してください。詳細は「セキュリティ コンプライアンス パック」を参照してください。

(info) コンプライアンス パックを使用するには、専用のライセンス機能を有効化する必要があります。ライセンスの詳細については、Parasoft 製品サポートにご連絡ください。

単体テスト アシスタントの拡張

このリリースでは、テスト作成プロセスが拡張され、テスト実行後に表示される推奨事項が改善されました。

推奨事項の追加および改善

  • NullPointerException のスロー 推奨事項タイプが追加され、NullPointerException がスローされるのを防ぐのに役立ちます。「NullPointerException のスロー」を参照してください。
  • 例外およびアサーション エラー 推奨事項が拡張され、例外に対処し、テストコードを自動的に更新するのに役立つアクション リンクが含まれるようになりました。「例外 / アサーション エラー」を参照してください。
  • 未カバーのコード推奨事項が拡張され、どのテストでもカバーされていない例外キャッチ ブロックに対してもこの推奨事項が表示されるようになりました。「カバーされていないコード」を参照してください。

単体テスト作成の拡張

以下が可能になりました。

  • 標準の Junit テストまたは Spring フレームワークを使用するテストを作成する。「Spring 単体テストの作成」および「テスト スイートの作成」を参照してください。
  • 追加の Spring コンポーネント (@Component、@Controller、@RestController、@ Repository、および @Service) のテストを作成する。「Spring 単体テストの作成」を参照してください。
  • クラスレベルで @InjectMocks および @Mock アノテーションを追加することによって、モックを初期化するように UTA を設定する。「モック初期化の設定」を参照してください。

また、ディープ初期化モードが改善され、テストの作成時にアクセスできないフィールドおよび親クラスのフィールドも自動的に初期化するようになりました。

テスト影響分析の改善

  • テストとコードの関連付けの情報が、IDE を再起動しても保持されるようになりました。
  • [影響を受けるテスト] ビューのコンテキストメニューを使用してテストコードに移動し、選択したテストを実行できます。

詳細は「テスト影響分析」を参照してください。

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

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

  • CWE 3.2
  • CWE SANS Top 25 2011+On the Cusp
  • CWE SANS Top 25 2011
  • OWASP Top 10-2017
  • PCI DSS 3.2
  • UL 2900

次のテスト コンフィギュレーションは、静的解析カテゴリから セキュリティ コンプライアンス カテゴリに移動しました (「セキュリティ コンプライアンス パック」を参照)。

  • CERT for Java

解析結果の向上のため、以下のテスト コンフィギュレーションが更新されました。

  • Demo Configuration
  • Flow Analysis Aggressive

Jtest に付属するテスト コンフィギュレーションの一覧は「ビルトイン テスト コンフィギュレーション」を参照してください。

非推奨のテスト コンフィギュレーション

  • CWE-SANS Top 25 2011 – 非推奨になり、 新しい CWE SANS Top 25 2011 テスト コンフィギュレーションに置き換えられました。
  • PCI Data Security Standard – 非推奨になり、新しい PCI DSS 3.2 テスト コンフィギュレーションに置き換えられました。

  • UL 2900 - 非推奨となり、新しい UL 2900 テスト コンフィギュレーションに置き換えられました。このコンフィギュレーションには、CWE SANS Top 25 2011 および OWASP Top 10 2017 ルールが含まれます。
  • OWASP Top 10 2017 – 非推奨になり、新しい OWASP Top 10-2017 テスト コンフィギュレーションに置き換えられました。

非推奨のテスト コンフィギュレーションは、デフォルトでは利用できません。ユーザー定義コンフィギュレーションとして適用することはできます。これらのテスト コンフィギュレーションは、次の場所にあります: [INSTALL_DIR]\configs\Deprecated

新規静的解析ルール

以下のテスト静的解析ルールが追加されました。

ルール ID

ヘッダー

BD.PB.CHECKRET

非 void 関数の戻り値を必ずチェックする

BD.PB.INTOVERF

整数のオーバーフローを避ける

BD.SECURITY.TDPASSWD

保護されていない認証情報の使用から保護する

CODSTA.ORG.TODOJAVA

コメントにタスク タグが含まれていないことを確認する

CODSTA.ORG.TODOPROP

コメントにタスク タグが含まれていないことを確認する

CODSTA.ORG.TODOXML

コメントにタスク タグが含まれていないことを確認する

SECURITY.IBA.AUXD

XMLDecoder で信頼されていないデータを解析しない

SECURITY.IBA.DXXE

XML 外部エンティティ インジェクションを無効化する

SECURITY.IBA.RUIM

適切なセッション有効期限を確認する

SECURITY.IBA.SC

LDAP のデシリアライズを無効化する

SECURITY.UEC.STTL

'web.xml' ファイルでセッションがタイム アウトするよう設定されていることを確認する

SECURITY.WSC.ACMD

MessageDigest のカスタム実装の使用を避ける

SECURITY.WSC.AISSAJAVA

Spring でのデータ暗号化で、セキュアではない暗号化アルゴリズムを使用しない

SECURITY.WSC.AISSAXML

Spring XML 設定ファイルで、セキュアではない暗号化アルゴリズムを使用しない

SECURITY.WSC.AUNC

非テスト クラスでの javax.crypto.NullCipher クラスの使用を避ける

SECURITY.WSC.DMDS

本番コードで DriverManagerDataSource クラスを使用しない

SECURITY.WSC.EWSSEC

Spring Security フレームワークからのデバッグ情報をログに記録しない

SECURITY.WSC.HGRSI

'HttpServletRequest' クラスの 'getRequestedSessionId' メソッドの使用を避ける

SECURITY.WSC.HV

HostnameVerifier.verify() メソッドが証明書を検証していることを確認する

SECURITY.WSC.MCMDU

MessageDigest オブジェクトは 'update' メソッドでデータを処理する必要がある

SECURITY.WSC.MDSALT

ハッシュ関数は salt とともに使用する

SECURITY.WSC.PBFA

認証の試みが複数回失敗した場合に対する適切な防御を確認する

SECURITY.WSC.SCHTTP

cookie を HttpOnly としてマークする

SECURITY.WSC.SIKG

KeyGenerator インスタンスを初期化する

SECURITY.WSC.VSI

サーバー識別子を適切に検証する

更新された静的解析ルール

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

  • PB.IKICO
  • PB.NUM.UBD
  • SECURITY.ESD.SIO
  • SECURITY.UEHL.LGE
  • SECURITY.WSC.ICA
  • SERIAL.RWAF
  • SECURITY.WSC.UOSC
  • PB.API.MASP

解決済みのバグおよび FR

バグ/FR ID

説明

JT-49237JSON テストおよびリソース パスが存在しない
JT-70472'Flow Analysis Aggressive’ テスト コンフィギュレーションをローカルで複製すると編集できない
JT-70473PB.NUM.UBD が float または double 型の変数しか考慮していない
JT-70475PB.IKICO の誤検出
JT-70584添付のプロジェクトに対して jtest-monitor ゴールが coverage.xml ファイルを生成できない
JT-70618見込み顧客のプロジェクトでアプリケーション カバレッジを収集できない

JT-70653

jtest 実行後に HTML レポートに Spring Security タイプが表示される

JT-70653

jtest 実行後に HTML レポートに Spring Security タイプが表示される
JT-70817CLI からの実行時に javafx.application のインポートが解決できない
JT-70827project.location パラメーターの引数として . を渡すと期待どおりに動作しない

UTA-3675

Mockito アノテーションを使用時のモック化の推奨事項

UTA-4019

パラメータライズド Spring テストでメソッドがモック化されない

XT-36321

IntelliJ の複数のバージョンで空の PDF レポートが生成される

XT-36478

IntelliJ IDE から Jtest 実行用ライセンスを取得できない

XT-36549

IDE 内で設定された名前はシステム ユーザーをオーバーライドできるか?

XT-36671

Eclipse で影響範囲テストを実行すると JUnit ビューが文字化けする

XT-36705

日本語ロケールでは変更ベースのテストが動作しない

UTA-3675

Mockito アノテーションを使用時のモック化の推奨事項

UTA-4019

パラメータライズド Spring テストでメソッドがモック化されない




  • No labels