DTP Engine の最新リリースは、Parasoft の革新的アプローチを基礎として、ソフトウェア品質プロセスを継続的に改善します。
このリリースの内容:
継続的デリバリー環境での変化を捉える
継続的デリバリー プラットフォームを導入する企業が増えるにつれて、一定の期間に集積されたデータに基づく従来のレポートの仕組みは、もはや妥当ではなくなりました。リリース期間が短くなったことにより、インクリメンタルな変更が都度ビルドに持ち込むリスクを把握することが重要になっています。カバレッジやテストのレグレッションの変化をただちに可視化し、再実行する必要があるテストをすばやく特定できなければなりません。ここリリースでのアップデートは、このような変化を把握し、リスクを軽減してデリバリーを加速するために解決する必要がある問題を識別するのに役立ちます。
ビルドごとの静的解析違反のレポート
このリリースでは、ビルドベースのデータのレポートという概念が拡張されました。DTP Engine は、ビルドごとに静的解析の新規違反、修正済み違反、既存の違反をレポートできるようになり、企業がSDLCのより早い段階でより効率的に潜在的な問題に対処できるほか、違反と変更を関連付け、欠陥が入り込んだ可能性がある特定のコード領域をピンポイントに指摘できるようになりました。
Java Web アプリケーションのマルチセッション アプリケーション カバレッジ
Java アプリケーションのカバレッジ エンジン (JtestDTP Engine) が拡張され、同一のアプリケーション サーバーに同時にアクセスする複数のユーザーそれぞれのカバレッジを追跡できるようななりました。そのため、たとえば複数の QA エンジニアが同じ Web アプリケーション サーバーにアクセスし、並行してテストを行った場合も、カバレッジ エージェントはどのカバレッジがどのサーバーに関連しているかを判断できます。
開発者向けデスクトップのエクスペリエンス向上
開発者が望んでいるのはコードを書くことであり、ツールやプロセスが増えて作業がスローダウンさせられることではありません。このリリースでは次の IDE ベースの機能および拡張が追加され、開発者は欠陥のないソフトウェアをより速く作成できるようになりました。
Java 向け単体テスト アシスタント
アジャイルへの移行により、単体テストに関する課題が大きくなり、反復的な開発アプローチを採用する利点が打ち消される恐れがでてきています。
- 単体テストの作成と保守はリソースの点でコストが高い。テストを作成し、コードの成長に合わせて更新するには、技術的知識を持ち、コードを理解している人間が必要である。
- 多くの場合、単体テストはユーザー ストーリーのコンテキストの外で実行される。テスト要件からのトレーサビリティがないため、テストによって意図された機能が検証されているのかどうかに全幅の信頼を置くことはできない。
- 保守されていないテストや設計が適切でないテストは、振る舞いに一貫性がなく、極度に環境に依存する。結果として、コードが成長するにつれて回帰テスト スイートが不安定になり、継続的環境で信頼性の高いテストを行うことができなくなる。
JtestUnit Test Assistant (UTA)a は、開発者が意味のある保守性の高い単体テストを作成するのを支援し、このような問題を解決します。UTA は単体テストの作成にかかる時間を短縮するだけでなく、UTA のインターフェイスによって、従来は開発者の専門知識が必要とされた技術的障壁の一部を取り除きます。
単体テスト作成の負荷を減らすほか、既存のテストを解析し、安定性などの潜在的な問題を検出することもできます。単体テスト モニタリング機能は、環境への依存性が高いテストを検出するのに役立ち、隔離された環境で首尾一貫して実行されるようテストを改善することを可能にします。さらに、テスト実行中にオブジェクトを追跡して、認識されたオブジェクト上の変化に基づいてアサーションを生成することもできます。
Continuous Quality Assistant (CQA)
CQA を使用すると、開発者は、自分が作業したコードに対するフィードバックをただちに受け取ることができます。CQA は、コードを完全に解析する前に、ファイルを開いたり保存したりといった開発者のアクションにともなってコードを解析します。CQA は、テスト コンフィギュレーションで指定されたパフォーマンスの高いルールに絞って解析を実行するため、オーバーヘッドを低く抑えられます。
その他のアップデートおよび拡張
- DTP テスト コンフィギュレーション UI でのルールのパラメーター設定方法の改善
- HTML レポートおよび DTP でのエラーおよびセットアップの問題の表示方法の改善
解決済みの PR/FR
PR/FR ID | 説明 |
117075 | "Compliance by Category" ウィジェットの使用するカテゴリがターゲットのテスト コンフィギュレーションと一致しない |
119444 | テスト コンフィギュレーション作成後、DTP Server にコンフィギュレーションが表示されない |
119478 | Server Edition ライセンスに必要な機能が ENT ライセンスで利用できない |
120275 | Jenkins Cobertura Coverage ウィジェットが日本語ロケールで動作しない |
118760 | Jtest10.x に UC.UP ルールがない |
118762 | Jtest10.x に METRIC.DIF ルールがない |
118761 | Jtest10.x に GLOBAL.ACD ルールがない |
120444 | Gradle 3.0 がサポートされていない |
118860 | IntelliJ:sourcelevelinjsonfile が空 |
119814 | IBM RAD GUI でビルトイン テスト コンフィギュレーションが利用できない |
120140 | andjtestcli.jvm regarding -Xmx 値のドキュメントの矛盾 |
120595 | インナー クラスでは NAMING.NE が正しく動作しない |
121001 | HIBERNATE.SLM のルール ドキュメント修正例が間違っている |
116773 | 無関係なコードが追加されたとき BD-PB_NOTINIT が違反をレポートしなくなる |
116892 | RuleWizard にnullptr サポートを追加 |
118116 | Error: このコンテキストでは __if_exists の使用がサポートされていない |
119825 | 式の初期化子に対して MISRA2008-5.0.6 が違反を検出しない |
120019 | インクリメンタル モードがオンのときとオフのときで解析結果が異なる |
120121 | パース エラー: ここでは派生クラスは許可されない |
120126 | -include/-exclude ファイルが見つからない場合の問題 |
120353 | BD.PB.VOVR パラメーター名が誤っているため更新が必要 |
120455 | #define シンボルを使用して配列を初期化している場合に MISRA2004-9_2 ルールが違反を誤検出する |
120123 | website オプションの誤った使用 |
120203 | 名前に特殊文字を含む WebSite またはソリューションのサブフォルダーにある WebSite をビルドする際の無効な MSBuild ターゲット |
120296 | 日本語の文字を含むパスにあるプロジェクトに結果をインポートするとカバレッジ マーカーが表示されない |
117336 | Engine の解析がランダムに失敗する |
120151 | TFS での diff 操作中にセットアップの問題がレポートされる |
120315 | ルール ID に重要度が含まれる場合に抑制が無視される |