LoadTestGoalBasedLoadProfile クラス
ゴール志向ロード パターンを持つロード テストの負荷プロファイルを表します。
継承階層
System.Object
Microsoft.VisualStudio.TestTools.LoadTesting.LoadTestLoadProfile
Microsoft.VisualStudio.TestTools.LoadTesting.LoadTestGoalBasedLoadProfile
名前空間: Microsoft.VisualStudio.TestTools.LoadTesting
アセンブリ: Microsoft.VisualStudio.QualityTools.LoadTestFramework (Microsoft.VisualStudio.QualityTools.LoadTestFramework.dll 内)
構文
'宣言
<SerializableAttribute> _
Public Class LoadTestGoalBasedLoadProfile _
Inherits LoadTestLoadProfile
[SerializableAttribute]
public class LoadTestGoalBasedLoadProfile : LoadTestLoadProfile
[SerializableAttribute]
public ref class LoadTestGoalBasedLoadProfile : public LoadTestLoadProfile
[<SerializableAttribute>]
type LoadTestGoalBasedLoadProfile =
class
inherit LoadTestLoadProfile
end
public class LoadTestGoalBasedLoadProfile extends LoadTestLoadProfile
LoadTestGoalBasedLoadProfile 型で公開されるメンバーは以下のとおりです。
コンストラクター
名前 | 説明 | |
---|---|---|
LoadTestGoalBasedLoadProfile | LoadTestGoalBasedLoadProfile クラスの新しいインスタンスを初期化します。 |
このページのトップへ
プロパティ
名前 | 説明 | |
---|---|---|
CategoryName | 監視するパフォーマンス カウンターのカテゴリを取得または設定します。 | |
CounterName | 監視するパフォーマンス カウンターを取得または設定します。 | |
HigherValuesBetter | Category プロパティおよび Counter プロパティによって指定されたパフォーマンス カウンターが、値が低いほどリソースの使用率が高いことを示すパフォーマンス カウンターの場合、このブール値を true に設定します。 | |
InitialUserCount | 初期のユーザー カウントを取得または設定します。これは、指定されたゴールに基づいてユーザー ロードが調整される前に、ロード テストの開始時に実行される仮想ユーザーの数です。 | |
InstanceName | 監視するパフォーマンス カウンター インスタンスを取得または設定します。 | |
MachineName | 監視するコンピューターの名前を取得または設定します。 | |
MaxTargetValue | 対象とする値の上限を取得または設定します。カウンターがこの値を超えないようにロードが増減します。 | |
MaxUserCount | 最大ユーザー カウントを取得または設定します。ゴールが達成された後で、ロードはこの値を超えることができません。 (LoadTestLoadProfile.MaxUserCount をオーバーライドします。) | |
MaxUserCountDecrease | ユーザー ロードを削減する最大量を取得または設定します。 | |
MaxUserCountIncrease | ユーザー ロードを増やす最大量を取得または設定します。 | |
MinTargetValue | ゴール志向ロード パターンで対象とする値の下限を取得または設定します。 | |
MinUserCount | 最小ユーザー カウントを取得または設定します。ゴールが達成された後でも、ロードはこの値を下回ることができません。 (LoadTestLoadProfile.MinUserCount をオーバーライドします。) | |
ScenarioName | 負荷プロファイル実装が制御するロード テストのシナリオ名を取得または設定します。 (LoadTestLoadProfile から継承されます。) | |
StopAdjustingAtGoal | true は、テストでユーザー ロードの調整を停止する必要があることを示します。 false は、指定されたパフォーマンス カウンターの値を対象範囲内に保つ必要がある場合に、テストの実行中にユーザー ロードを継続的に調整することを意味します。 |
このページのトップへ
メソッド
名前 | 説明 | |
---|---|---|
CheckIfProfileCanBeModified | プロファイル プロパティがまだ変更できない状態である場合に、例外をスローします。 (LoadTestLoadProfile から継承されます。) | |
Copy | 現在のオブジェクトを変更して LoadTestScenario.LoadProfile プロパティに割り当てることができるように、そのオブジェクトのコピーを返します。 (LoadTestLoadProfile から継承されます。) | |
Equals | 指定のオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (Object から継承されます。) | |
Finalize | オブジェクトがガベージ コレクションにより収集される前に、そのオブジェクトがリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) | |
GetHashCode | 特定の型のハッシュ関数として機能します。 (Object から継承されます。) | |
GetLoad | ロード テストの現時点で使用するユーザー ロードを、引数として渡されたロード テストの開始からの elapsedSeconds の値に基づいて返します。 (LoadTestLoadProfile.GetLoad(Int32) をオーバーライドします。) | |
GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) | |
MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) | |
RestoreUserCountAfterRestart | 現在 (再起動後) のユーザー数を、再起動前の値に復元します。 (LoadTestLoadProfile.RestoreUserCountAfterRestart(Int32) をオーバーライドします。) | |
ToString | 現在のオブジェクトを表す文字列を返します。 (Object から継承されます。) | |
Validate | LoadProfile オブジェクトに有効ではないプロパティまたは整合性のないプロパティがある場合に、InvalidLoadProfileException をスローします。また、状況に応じたメッセージも表示します。 (LoadTestLoadProfile.Validate() をオーバーライドします。) |
このページのトップへ
例
次の例では、ロード テスト プラグインが GoadBasedLoadProfile オブジェクトを構築し、それを LoadTestScenario に割り当てます。また、Initialize() メソッドで DelayBetweenIterations の値も LoadTestScenario に割り当てます。
using Microsoft.VisualStudio.TestTools.LoadTesting;
public class LoadTestPluginInitChangeProfile : ILoadTestPlugin
{
public void Initialize(LoadTest loadTest)
{
LoadTestGoalBasedLoadProfile goalLoadProfile = new LoadTestGoalBasedLoadProfile();
goalLoadProfile.MachineName = Environment.MachineName;
goalLoadProfile.CategoryName = "Processor";
goalLoadProfile.CounterName = "% Processor Time";
goalLoadProfile.InstanceName = "_Total";
goalLoadProfile.InitialUserCount = 5;
goalLoadProfile.MinUserCount = 1;
goalLoadProfile.MaxUserCount = 100;
goalLoadProfile.MaxUserCountIncrease = 10;
goalLoadProfile.MaxUserCountDecrease = 5;
goalLoadProfile.MinTargetValue = 20;
goalLoadProfile.MaxTargetValue = 25;
// This example assumes that there is only one scenario
loadTest.Scenarios[0].LoadProfile = goalLoadProfile;
loadTest.Scenarios[0].DelayBetweenIterations = 5;
}
}
次の例では、ロード テスト プラグインが HeartbeatEvent ハンドラーで GoadBasedLoadProfile の選択されたプロパティを変更します。この方法は、.loadtest ファイルに指定された負荷ファイルがゴール志向ロード パターンの場合にのみ有効です。
using Microsoft.VisualStudio.TestTools.LoadTesting;
public class LoadTestPluginChangeGoal : ILoadTestPlugin
{
private LoadTest m_loadTest;
private LoadTestScenario m_scenario1;
private bool m_goalChanged;
public void Initialize(LoadTest loadTest)
{
m_loadTest = loadTest;
// This example assume there is only one scenario
m_scenario1 = loadTest.Scenarios[0];
m_loadTest.Heartbeat += new EventHandler<HeartbeatEventArgs>(m_loadTest_Heartbeat);
}
void m_loadTest_Heartbeat(object sender, HeartbeatEventArgs e)
{
if (e.ElapsedSeconds >= 60 && !m_goalChanged)
{
LoadTestGoalBasedLoadProfile goalLoadProfile =
m_scenario1.LoadProfile.Copy()
as LoadTestGoalBasedLoadProfile;
goalLoadProfile.MinTargetValue = 50;
goalLoadProfile.MaxTargetValue = 60;
m_scenario1.LoadProfile = goalLoadProfile;
m_goalChanged = true;
}
}
}
スレッド セーフ
この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。
参照
関連項目
Microsoft.VisualStudio.TestTools.LoadTesting 名前空間