2016-04-11 14 views
0

品質基準の一部として、テスト対象のアプリケーション(Windowsクライアント/サーバーデスクトップアプリケーション)が開かれる時間などの一般的なタスクを実行するのに必要な時間ドキュメントを保存する時間などが含まれます。デスクトップクライアント/サーバーアプリケーションで正確なパフォーマンス測定を得る方法

一般的な使用例には、指定されたマシンでユースケースを完了するために許容される最大時間が含まれており、これらの時間をすべてのスプリントで検証する必要があります。

私たちはテストツールとしてUFT(HP Unified Functional Testing(UFT))を使用していますが、サンプルアプリケーションでは時間がかかります。私たちはコンピュータ上のすべての機能を無効にしています.CPUは0%近くあり、私たちが行っている対策では15%のバリエーションがあります。

このような指標をプロジェクトで収集した経験がありますか?あなたはどのツールを使ったのですか、どのように情報を入手しましたか?手動で行うことは選択肢ではありません。

答えて

1

QTPは、MercuryTimersオブジェクトにタイミングメカニズムを提供します...これは、開始、停止、継続、リセット、および経過時間の読み取りを行う名前付きタイマーの集合です。それはコレクションなので、複数のタイマーを同時に設定し、それぞれを独立して読み取ることができます。

宣言または次元化する必要はありません。メソッドを呼び出すとすぐに存在します。また、アクションにまたがって存続します。名前に文字列を使用するため、選択した方法で名前をパラメータ化できます。

ここでは例です:あなたはすでにそれをしたよう

MercuryTimers("App Life Time").Start 
MercuryTimers("Load Time").Start 

systemUtil.Run TestURL 

if not Browser("IE").Exist(60) then 
    FailTestBecause "Browser load timeout" 
End If 

MercuryTimers("Load Time").Stop 

TimeTakenToLoad = MercuryTimers("Load Time").ElapsedTime 

RunAction "Do Other Stuff" 

RunAction "Exit and Close Browser" 

MercuryTimers("App Life Time").Stop 

TotalTimeAppExisted = MercuryTimers("App Life Time").ElapsedTime 

SomeOutputFunction "Load Time:" & TimeTakenToLoad & " - Exist Time:" & TotalTimeAppExisted & " - in milliseconds" 

限り、テストマシン上のすべての不要なプロセスを排除するとして、それは聞こえます。私は常にWindowsサービスの情報についてblackviper.comをチェックします。

+0

私たちはこれを行いました。内部にスリープ状態のボタンしかないサンプルアプリケーションで、同じコード15%のバリエーションを取得しました:S –

+0

テストマシンのディスクドライブが何らかの作業をしている間にタイマーは動作していますか?ドライブにアクセスすると、任意のテストマシンの全体的なパフォーマンスがランダムに変動する可能性があります。あなたはSpinRiteのようなツールを使ってディスクをチェックすることができます(もしあなたが本当に技術的な人なら、Dmitry Postriganが "MHDD"を参照してください)...また、まだ行っていなければ、サービス設定サンプルについてはBlackViper.Comを見てくださいプラットフォームをさらに安定させることができます。 –

関連する問題