DevPartner for Visual C++ BoundsChecker Suiteは、使いなれたVisual Studioの開発環境から使えるので、容易な操作でデバック・テスト時間を大幅に短縮、開発工数を削減します。
プログラムを実行するだけで、ActiveX、DirectXなどのWin32 APIの検証、また実行時ファル、DLL、サードパーティ製のモジュール、およびOLEなどのエラーを検出します。さらに、メモリリークやリソースリークだけでなく、スタティック エラー、スタック エラー、ヒープエラーおよびデッドロックの発生箇所を特定します。
プログラム実行時にパフォーマンス データをボトルネックとなるファイル、ソースコードの行、関数や外部コンポーネント単位で収集し、最適化のためのパフォーマンス分析を実施します。また、メソッドの相関関係をグラフィカルに表示するコールグラフやパフォーマンスチューニングの前後でその違いを容易に理解できる比較表を提供します。これにより高性能なアプリケーション開発を支援します。
プログラムを実行したコードと未テスト コードを、自動的に色分けして表示するので、未テスト コードを簡単に確認できます。 また、アプリケーション、コンポーネント、関数、コード行単位でのテスト実行率(%)のレポートを提供します。さらに、複数セッションから収集されたカバレッジ データを ひとつにするマージ機能により、プロジェクト全体でのカバレッジ情報を簡単に蓄積でき、前回のテストと今回のテストで、ソースコードの変更されている割合(%)をグラフで表示し、修正作業の進捗状況を確認する事もできます。
カバレッジ分析/パフォーマンス分析/エラー検出では、ブラウザベース(.HTML/.HTM)の視認性の高いレポートを生成することが出来ます。レポートのカスタマイズも可能であり、品質管理責任者や開発部門責任者向けのエビデンスとしてご活用いただけます。
*1 マネージ/アンマネージ コード対応
実行時エラー検出(旧BoundsChecker)は、プログラムを実行するだけでActive X、COMや8,700以上のAPIやOLEの検証が可能です。また、実行ファイル、DLL、サードパーティ製のモジュールやOLEコンポーネントのエラーも検出できます。さらに、メモリリークやリソースリークだけでなく、スタティックエラー、スタックエラー、デッドロックなどの発生箇所を特定します。
API/COMのエラー |
COMインターフェース エラー、パラメータ エラーなど
|
---|---|
メモリエラー |
ダイナミック メモリ オーバーラン、メモリのアロケーション、スタティックメモリ、スタックメモリなど
|
デッドロック関連のエラー |
デッドロック、スレッドデッドロック、イベント エラー、ハンドルエラー、リソースの使用やネーミング エラーなど
|
ポインター/リークエラー |
インターフェース リーク、メモリリーク、リソースリークなど
|
モジュール実行後に検出したエラーを一覧で表示。エラーが発生している具体的なソースコードの箇所を特定します。また、エラー発生時の関数の実行状況とコール スタックを表示します。
確保されたメモリとリソースについて実行中に確認ができます。これにより、メモリリークが発生している箇所を特定することができます。
アンマネージのプログラムで排他オブジェクトを使いマルチスレッドプログラムを管理しているとき、デッドロックを自動検出できます。
マネージ コードを更行時エラー検出で解析すると、プログラム実行終了時の「通知情報」タブにガベージ コレクション情報を表示します。
パフォーマンス分析では、アプリケーション実行時にバックグランドで動作し、セッション単位でパフォーマンス情報をすばやく収集し、チューニングに必要な分析結果を直感的にわかり易いユーザーインターフェースで提供。これにより、ボトルネックを効率よく検出し、パフォーマンスチューニングにかかる工数を短縮します。
相対実行時間割合と呼び出し時間をメソッド単位で集計、表示します。これにより、処理の重いメソッドや不必要に実行回数の多いメソッドを特定できるので、チューニングポイントを検出できます。
メソッド単位の測定結果をドリルダウンすることにより、問題点をソースコードで特定することが可能です。
メソッド呼び出しの流れをコールグラフでグラフィカルに表示するので、メソッドのパフォーマンスを詳細に分析することが可能です。
コードを修正する前と修正した後の実行結果を比較した結果を表示しますので、修正によってどのくらいパフォーマンスが向上したかを確認することが可能です。
カバレッジ分析では、メソッド、関数、ステートメント単位でのカバレッジ情報を収集。アプリケーション、コンポーネント、モジュール単位で集計するので、どの範囲のコードがどの程度詳しくテストされているかを詳細に把握できます。また、複数のカバレッジ情報をマージできるので、プロジェクト全体のカバレッジ データを取得することができ、テスト漏れを予防します。
メソッド単位で収集/集計されたカバレッジ率と呼び出し回数を一覧で見ることができるので、未テストのメソッドの洗い出しが簡単に行えます。
テストされていないステートメントを赤で表示しますので、未テストの箇所を簡単に把握することが可能です。
複数のガバレッジ結果をマージしてテスト全体の進捗状況も管理できます。