AQtime Pro の機能

最新バージョンの新機能とバージョン履歴はこちら


コード カバレッジ分析


AQtime Pro は、C/C++、.NET、Silverlight、Java、Delphi のアプリケーションのコード カバレッジ分析を提供します。AQtime Pro は、手動によるアプリケーションの実行中にコード カバレッジを計測するだけでなく、継続的なカバレッジ分析のために自動回帰テストに統合して利用できます。

 

未使用または未検証コードの検出

Fault Simulation

AQtime Pro のコード カバレッジ分析は、どのソース ファイル、関数、コード行がテストでカバーされたか、またはテストされていない、あるいは部分的にしかテストされていないかを確認することができます。これにより、作成すべき追加テストや既存のテストをどのように改良すべきか知ることができます。

カバレッジ対象の選択と除外

特定のソースファイル、名前空間、クラス、メソッドのカバレッジを確認したい場合、AQtime Pro は、簡単にコードをカバレッジ分析に含めたり除外することができるため、分析したい特定のエリアに焦点を当てることができます。

コード分析対象の選択と除外の詳細

 

カバレッジ データを手軽に分析

任意の詳細レベル (コンパイルされたモジュール、ソースファイル、関数) でコードカバレッジ レポートを分析できます。定義済みのフィルターを使用すると、一定のカバレッジ値以下、またはカバレッジされないコードだけにレポートを制限することができます。

プロファイリング結果のレポートの詳細

カバレッジ結果の比較

AQtime Pro は、過去のカバレッジ結果と現在のカバレッジ結果とを並べて比較することができます。新規コードの記述、既存コードの変更、新規テストの追加により、プロジェクト カバレッジがどのように変化したかを確認することができます。

 

カバレッジ データの結合

プロジェクト全体の集計カバレッジ統計を取得するために、複数のコード カバレッジの結果を結合することができます。これは、複数の環境で実行される大規模なプロジェクトで有効な機能です。

また、AQtime Pro は各カバレッジ セッション後に、自動的に結果を結合できるので、時間の節約と最終結果だけに集中することができます。

 

自動テストで AQtime Pro カバレッジ分析したビデオ (6:06)

 

 

プロファイリングの機能

 

パフォーマンス プロファイリング


AQtime Pro は、32 ビットおよび 64 ビットの C/C++、Delphi、.NET、Java、Silverlight アプリケーションと、スクリプトの性能解析を行い、ボトルネックを特定します。AQtime Pro は、スタンドアロンのパフォーマンス プロファイラーとして使用することも、あるいは生産性向上のため Microsoft Visual Studio および Embarcadero RAD Studio IDE に統合して使用することもできます。

 

分析レベルの選択

AQtime Pro は、アプリケーションのパフォーマンス分析用に複数のモードを用意しています。初めは軽量な 「サンプリング プロファイラー」 を使用してアプリケーション全体からボトルネックとなる箇所を特定し、その後より正確な 「パフォーマンス プロファイラー」 を使用することでホットスポットをより深くドリルダウンできます。

 

プロファイリング範囲の選択

AQtime Pro は、ソースコードの特定の部分に焦点を当てることができるので、任意の範囲(ソースコード、クラス、メソッドなど)を選択してプロファイルを実行したり、逆にプロファイリングから特定の範囲を除外することができます。また、アプリケーションの実行中にいつでもプロファイリングを開始および停止させることができます。加えて、AQtime Pro は、アプリケーションの特定のメソッドの実行時または、終了時に自動でプロファイリングを開始および、停止させることも可能です。これらの機能により、プロファイリング時のオーバーヘッドを最小限に抑えられます。

 

プロファイリング対象の選択と除外の詳細

 

 

詳細なレポート

AQtime Pro のパフォーマンス プロファイリング レポートは、アプリケーションのパフォーマンスに大きな影響を与える関数と、コールパスを簡単に特定します。サマリーから詳細なパフォーマンス レポートにドリルダウンすることで、パフォーマンスのチューニングが必要なコードが分かります。

 

プロファイリング結果のレポートの詳細

 

 

スレッドの測定をサポート

AQtime Pro のプロファイリングは、スレッドに完全対応し、Windows、.NET、COM スレッドを監視することができます。アプリケーション コードから直接読み取ることができるスレッド名で、プロファイリングのオンとオフをスレッド ベースで行うことができます。プロファイリング結果は、各スレッド毎または全てのスレッドの両方で分析することができます。

 

 

プロファイリング データの比較

AQtime Pro は、プロファイリング結果を比較することができるため、最適化の前後のパフォーマンスの違いを簡単に確認することができます。比較時には、差分の数値や、差分の割合をレポート内で表示できます。

メモリー プロファイリング


AQtime Pro のメモリー プロファイリングは、アプリケーションのメモリーリークと、リソースリークを特定します。リークの問題を解決することにより、アプリケーションの高い効率性と、安定性を確保するのに役立ちます。AQtime Pro は、スタンドアロンのメモリー アロケーション デバッガーとして利用できるほか、Microsoft Visual Studio および Embarcadero RAD Studio に統合して使用することもできます。

メモリー リークの検出と監視

AQtime Pro は、様々なタイプのメモリーおよびリソースのリークを検出できます:

  • クラス インスタンス リーク
  • 未解放のメモリー ブロック
  • ハンドル リーク (ファイル、ミューテックス、セマフォ、レジストリ ハンドルなど)
  • GDI および GCI+ リソース リーク (ビットマップ、フォントなど)
  • COM および参照カウントのリーク
  • プリント スプーラーのメモリー リーク

 

メモリー アロケーションをリアルタイムに監視

AQtime Pro の Memory Monitor は、アプリケーションのメモリーおよびリソースのアロケーションをリアルタイムで表示するので、過度なメモリーおよびリソースの使用を検出できます。アプリケーションで使用される個々のクラスだけでなく、総メモリー使用量、カテゴリー別メモリー使用量 (ヒープ、予約された仮想メモリーなど)、リソース タイプ (ブラシ、フォントなど) を監視することができます。より包括的なアプリケーションのメモリー分析をするために、いつでも完全なメモリーのスナップショットを撮ることができます。

 

メモリーのスナップショット比較

AQtime Pro でアプリケーション メモリーのスナップショットを撮り、比較することでメモリー リークの特定やアプリケーション メモリーの使用量を分析することができます。本来よりも長く存在するオブジェクトの追跡が簡単になります。

 

コールスタックの確認

AQtime Pro は、すべてのライブ オブジェクトのコール スタックのアロケーションを追跡するので、リークしたオブジェクトが作られたソースファイル、関数、行の正確な場所が分かります。

 

 

メモリー リークの検出と管理のブログ

プロファイリング対象の選択と除外


AQtime Pro を使用して、アプリケーション全体、または特定の領域だけをプロファイリングすることができます。初回はアプリケーション全体を解析し、問題の箇所を特定後に、その部分だけを再度深く解析することで、不要なオーバーヘッドを抑え、効率良くプロファイリングが行えます。

 

プロファイリングで除外するコードと含めるコード

AQtime Pro のプロファイリング エリアでは、プロファイルする箇所を指定でき、名前空間や、クラス、メソッドをクラスビューからドラッグ アンド ドロップすることで、プロファイリング対象に選択したり、除外することができます。

 

オンデンマンドでプロファイリングの開始と停止

AQtime Pro は、アプリケーションの実行中、および特定の関数の開始または終了時に、自動的にプロファイリングの開始または停止をするためのトリガーとアクションを設定できます。また、AQtime SDK を使用してアプリケーションからプロファイリングを制御できます。これにより特定の問題に焦点を当てて、残りのコードはオーバーヘッドなしで実行することができます。

 

関数レベルと行レベルのプロファイリング

AQtime Pro は、関数レベルと行レベルの両方のプロファイリングを提供するので、必要に応じて詳細レベルを選ぶことができます。最初に、関数レベルの分析で最適化のための主要な候補を特定し、次に検出したボトルネックの詳細な分析のために行レベルのデータを集めます。

 

プロセスにアタッチ

すでに実行中のアプリケーションに AQtime Pro をアタッチすることができ、アプリケーションを再起動させることなく、すぐにプロファイリングを開始することができます。これにより、特定の状態に達したアプリケーションのパフォーマンスとメモリーを分析することができます。

 

標準ライブラリー メソッドを無視

AQtime Pro は、プロファイリングから標準ライブラリー メソッドを自動的にフィルターで除外するので、アプリケーション コードの解析に集中することができます。このフィルターは、ネイティブ コード ライブラリー (VCL、ATL、MFC、およびその他) と .NET Framework ライブラリーに適用されます。

プロファイリング結果のレポート


AQtime Pro は、包括的で分かりやすいレポートを提供し、開発者はアプリケーション内のパフォーマンス ボトルネック、メモリーおよびリソース リーク、その他の問題を簡単に特定することができ、適切にソースコードを最適化できます。

 

サマリーと詳細なパフォーマンス レポート

AQtime Pro は、高度なデータ分析を行うため、サマリーと詳細なレポートを提供します:

  • サマリーは、分析結果の要約と、最適化が必要な関数の上位 10件をピンポイントで指摘するため、もっとも最適化が必要な部分を素早く特定することができます。
  • 詳細レポートは、すべてのモジュール、スレッド、ソースファイル、クラス、関数のプロファイリング結果を含み、分析の種類によっては、ソースコードまで掘り下げて確認することもできます。このレポートは、正確な関数レベルと行レベルのタイミング、ヒット カウント、メモリー アロケーションなど、開発者が複雑な問題を分析し、解決するために必要なその他多数のメトリクスを含みます。

 

クリティカルなパスを可視化

プロファイリング レポートは、ハイライトされたクリティカルなパスとアプリケーションのすべての関数のコールツリーを含み、実行時間やメモリー アロケーション、その他のメトリクスを提供します。コールツリーにより、パフォーマンスのボトルネックの箇所と、リークしたメモリーのソースを特定できます。

 

結果からソースコードにナビゲート

プロファイリング結果は、AQtime Pro のコードビューアと同期しているため、ボトルネックを引き起こしている箇所をドリルダウンすることで、問題のコードを素早く確認することができます。

 

プロファイリング途中の結果を取得

AQtime Pro は、プロファイリングのセッション終了時に自動的にレポートを生成します。さらに、アプリケーションの実行中でもプロファイリング結果をキャプチャーすることができます。

 

結果のフィルタリング

プロファイリング結果で、重要ではない情報を非表示にし、重要なクラスや関数だけを表示することができます。また、検出されたボトルネックに優先度をつけるために様々なメトリクス (時間、アロケートされたメモリー、コード カバレッジ率) を使用しプロファイリング データを並べ替えることもできます。

 

結果の比較

AQtime Pro は、以前のプロファイリング結果と現在のプロファイリング結果を比較できるため、コードの変更により、アプリケーションが改善されたか、または別の問題を引き起こしたかを比較結果から判断できます。

 

結果をエクスポート

AQtime Pro は、レポートを印刷、またはそれらを Microsoft Excel、HTML、XML、テキストファイル、データベースにエクスポートすることができます。

 

 

 

IDE 統合


Microsoft Visual Studio および Embarcadero RAD Studio の IDE に統合できるため、使い慣れた開発環境上で、パフォーマンスの問題やメモリーとリソースのリークを検出することができ、アプリケーションを最適化できます。

AQtime Pro は、スタンドアロンとしても、Microsoft Visual Studio および Embarcadero RAD Studio の IDE と統合しても使用することも可能です。クリック 1 つでアプリケーションのパフォーマンス、メモリーの使用量、コード カバレッジ、その他のメトリクスなどを分析でき、IDE から離れることなく、コードの最適化に取り組めます。

Microsoft Visual Studio で
プロファイリング

C++、C#、Visual Basic .NET、F# アプリケーションを Visual Studio から直接プロファイリングします。

 

詳細

Embarcadero RAD Studio で
プロファイリング

AQtime Pro が提供するプロファイリング機能を使用して、RAD Studio 上で Delphi、C++Builder アプリケーションを分析します。

 

詳細

 

 

 

フォールト シミュレーション


AQtime Pro には、アプリケーションの実行中に障害をシミュレートし、アプリケーションの動作への影響を監視する Failure Emulator が含まれています。主に次の機能が提供されます :

AQtime Pro は、Microsoft Visual Studio や Embarcadero RAD Studio に統合でき、IDE 上でアプリケーションのデバック中にランタイム フォールト インジェクションを実行することができます。

ソースコードの変更は不要

AQtime Pro の Failure Emulator は、アプリケーション コードの変更を必要としていません。ソースコードを利用できないアプリケーションにもフォールトを挿入することができます。

高いコード カバレッジを達成

ソフトウェアの障害は、通常の動作条件で再現するのは困難です。AQtime Pro の Failure Emulator を使うと、高精度で再現性のある障害のシミュレーションができ、簡単に例外処理やリカバリー コードに到達することができます。

様々な種類の障害をシミュレート

AQtime Pro は、様々な障害のエミュレートをサポートします:

  • ファイル システム エラー (存在しない、またはロックされたファイル、アクセス拒否など)
  • レジストリ エラー (存在しない、または読み取り専用、アクセス拒否など)
  • メモリー不足
  • COM エラー(存在しない COM サーバー、未登録の ProgID など)
  • コンディション トリガー障害 (例: n 回目ごと、n 回目以降)

AQtime Pro は、コール スタックの失敗をレポートに表示し、障害が検出されたコード行に移動し、対応することができます。

 

 


 

サポートするアプリケーションとテクノロジー


C/C++、Delphi、.NET、ASP.NET、Silverlight、Java、スクリプト向けのアプリケーションの実行時分析では、ネイティブとマネージド モジュールの両方を同時に分析できます。

AQtime Pro は以下のプロファイルができます:

AQtime Pro は、スタンドアロンの Windows アプリケーション、Windows サービス、IIS、ASP.NET、XBAP、COM、DCOM、COM+ アプリケーションの開発に関わらず、すべてをサポートする最適なプロファイラーです。

C/C++

パフォーマンスのボトルネック、メモリー/リソース リーク、未検証、複雑なコードを除去することで C および C++ アプリケーションの品質を向上します。Visual Studio IDE 上でプロファイルが可能です。

詳細

Delphi

RAD Studio に統合されたプロファイラーを使用することで、Delphi アプリケーションのパフォーマンス、メモリーおよびリソースの使用量、コード カバレッジ、コード メトリックスを向上します。

詳細

.NET プロファイリング

1 つのプロファイリング ツールで、.NET アプリケーションのパフォーマンスとメモリー使用量の分析や、コード カバレッジの計測および、例外の追跡が行えます。

詳細

Silverlight プロファイリング

パフォーマンスのボトルネックを診断し、Silverlight のコードカバレッジを分析することで、Silverlight アプリケーションの開発効率と品質を向上します。

詳細

Java プロファイリング

Java アプリケーションのパフォーマンスの問題と未検証のコードを検出し、Java ソフトウェアの品質を向上します。

詳細

JavaScript と VBScript プロファイリング

Internet Explorer、TestComplete 自動化テスト、Windows Script Host でのスクリプトのパフォーマンスとコード カバレッジを測定します。

詳細

 

 

ページトップへ