環境変数 QTP (UFT例付き
⚡ スマートサマリー
環境変数 QTP (NAIST) と UFT すべてのアクション、関数ライブラリ、リカバリーシナリオが読み取れる値を1つ保存することで、1つのテストで実行できます。 URLs、認証情報、パス、言語文字列をどこにもハードコーディングせずに使用します。
環境変数とは何ですか?
環境変数 は、コンピュータ上の動的な「オブジェクト」であり、値を格納でき、その値は、1 つ以上のソフトウェア プログラムによって参照されることができます。 Windows.
環境変数は動的な性質を持ち、変更可能です。プログラムが参照できる環境変数は多数あり、それらの変数はプログラムのコンピューティング環境に関する情報を取得するのに役立ちます。テストツールは、これらの変数に加えて独自のリストを保持しています。 Windows 用意されています。
UFT 環境変数1つ
マイクロフォーカス UFT 環境変数は、すべてのアクション、関数ライブラリ、および復旧シナリオからアクセスできます。
⚠️ バージョンノート: この製品はHP QuickTest Professionalとして出荷され、Unified Functional Testingに名称変更され、現在では OpenText 機能テスト(UFT XNUMX)環境オブジェクトと以下の画面は変更されていません。製品名だけが移動しました。 公式環境オブジェクトリファレンス 現在の構文を継承します。
の種類 QTP 環境変数
環境変数は、テストでグローバルに使用できる変数です。 環境変数には XNUMX 種類あります
- 組み込み変数
- ユーザー定義変数 (2 つのサブタイプがあります)
- インナー
- 外部
組み込み変数は、マシンとテスト実行に関する情報を記述するもので、読み取り専用です。ユーザー定義変数にはユーザー自身のデータが格納され、スクリプトから書き込み可能なのは内部変数のみです。
組み込み変数
In QTP、組み込み変数は事前定義された変数です。これにより、ユーザーは実行中のテストに関する情報を取得したり、OS に関する情報を取得したりできます (Operaテストが実行されているシステム)。組み込み変数の一部には、アクションの反復、 Operaシステム、テスト ディレクトリ、ローカル ホスト名、 Operaシステムのバージョンなど
ファイルに移動 -> 設定 -> 環境変数セクションを表示するには、「環境」タブをクリックします。すると、環境変数の一覧が表示されます。ペインを開くと、以下に示すように、組み込みのリストが表示されます。
環境変数から取得した値は、実行セッション中に必要に応じて取得して使用できます。これらは、テスターが最も頻繁に参照する名前です。
| 組み込み変数 | 返ってくるもの |
|---|---|
| OS | Operaテストを実行するマシンのtingシステムファミリー |
| OSバージョン | Operatingシステムバージョン |
| テスト名 | 現在実行中のテスト名 |
| テストディレクトリ | テストが保存されているフォルダ |
| アクション名 | 現在実行中のアクションの名前 |
| アクションイテレーション | 現在のアクションの反復回数 |
| ローカルホスト名 | ローカルマシンのホスト名 |
| 結果ディレクトリ | 実行結果が書き込まれるフォルダ |
例:
MsgBox Environment.Value("OSVersion")
その一行だけで、実行セッションからオペレーティングシステムのバージョンが直接抽出されます。
ユーザー定義変数
テストの実行前に、これらはユーザーによって定義される変数です。 さまざまなテストにわたってグローバルに使用することも、XNUMX つのテストに制限することもできます。
ユーザー定義変数は XNUMX 種類に分類されました
- インナー
- 外部
- ユーザー定義 - 内部変数これらの変数は、テストを実行する前にユーザーによって定義され、特定のテストでのみ使用可能です。
- ユーザー定義 - 外部変数: これらの変数はユーザーによって定義され、さまざまなテストにわたってグローバルに使用できます。
外部変数を読み込む方法は2つあります。1つ目は、テスト実行前に環境タブまたはユーザー定義画面で「変数を読み込む」チェックボックスをオンにし、XMLファイルを選択することで手動で読み込む方法です。2つ目は、スクリプトコマンドを使用する方法で、これについてはこのページの後半で説明します。
ユーザー定義変数は、次のように作成できます。変数タイプをユーザー定義に切り替え、名前と値の行を追加します。
処理が完了した行は、ユーザー定義リストに表示されます。
次のように変数にアクセスできます
MsgBox Environment.Value("Guru99")
メッセージボックスには、その変数名に格納されている値が表示されます。
環境オブジェクトのメソッドとプロパティ
どちらのリストにも、1つの方法でアクセスできます。 VBScript Environment と呼ばれるオブジェクト。このオブジェクトは、1 つのプロパティ、1 つのメソッド、および 1 つの読み取り専用プロパティを公開しており、それが API のすべてです。
| Member | タイプ | 何それがありません |
|---|---|---|
| 値 | プロパティ | 環境変数を取得し、ユーザー定義の環境変数を設定します。 |
| LoadFromFile | 方法 | 実行時に外部環境変数XMLファイルを読み込む |
| 外部ファイル名 | プロパティ | 環境ペインで選択した外部ファイル、または空の文字列を返します。 |
読み取りはどこでも可能です。書き込みはユーザー定義の内部変数に対してのみ可能です。組み込み変数とファイルから読み込まれた変数は読み取り専用です。
' Read any variable strVersion = Environment.Value("OSVersion") ' Write a user-defined internal variable Environment.Value("Guru99") = "SecondValue" ' Check which external file is active If Environment.ExternalFileName = "" Then MsgBox "No external environment file is loaded" End If
同じステートメントは、アクション、関数ライブラリ、または 回復シナリオ.
外部環境変数XMLファイルの作成と読み込み方法
外部ファイルを使用することで、変数リストが共有可能なアセットに変換され、編集手順なしで開発環境、ステージング環境、本番環境に対して1つのテストを実行できるようになります。
- まず、環境設定パネルで値を内部ユーザー定義変数として定義してください。
- エクスポート そのペインのボタンは、正しい XML あなたにとっての構造。
- 環境ごとに1つのファイルを保存してください。例えば、EnvDev.xmlとEnvProd.xmlのようにです。
- テスト対象ファイルを「変数を読み込む」チェックボックスで指定するか、スクリプトからファイルを読み込みます。
このファイルは、以下の構文で記述された変数と値のペアのフラットなリストです。
<Environment>
<Variable>
<Name>This is the first variable name</Name>
<Value>This is the first variable value</Value>
</Variable>
</Environment>
コードからの読み込みは2行のガードで行われます。ファイルが既にアクティブかどうかを確認し、アクティブでない場合にのみ読み込みます。
fileName = Environment.ExternalFileName If fileName = "" Then Environment.LoadFromFile "C:\testEnv.xml" End If
ベストプラクティスとよくある間違い
問題のほとんどは、構文よりもスコープやスペルミスに起因します。以下の表は、テスターが最も頻繁に遭遇する不具合の一覧です。
| 症状 | 原因となる | 修正する |
|---|---|---|
| 変数は空の値を返します | 名前のスペルが間違っているか、このテストには追加されていません。 | 名前が完全に一致しています。環境パネルでスペルを再確認してください。 |
| 代入行で実行エラーが発生しました | スクリプトは組み込み変数または外部から読み込まれた変数に書き込みます | ユーザー定義の内部変数のみを割り当てることができます。 |
| 外部ファイルは無視されます | チェックボックスがオンになっておらず、LoadFromFile が呼び出されていません。 | チェックボックスにチェックを入れるか、スクリプトからファイルを読み込んでください。 |
| 他の場所で共有変数が欠落しています | 変数は内部変数として定義されました | 外部のXMLファイルに移動して、すべてのテストで読み込めるようにする。 |
- リストが増えてもペインの視認性を維持できるよう、命名規則を統一してください。
- XMLファイルはソース管理下に置き、実際のパスワードを決して保存しないでください。
- 実行中に一定のままとなる値には環境変数を予約し、行ごとのデータは データ表.





