Eggplant Functional のグローバルプロパティ
Eggplant Functional のグローバルプロパティは、具体的にはEggplant FunctionalアプリケーションからSenseTalkスクリプトを実行するためのものです。 しかし、一般的なSenseTalkのグローバルとローカルプロパティもEggplant Functionalのスクリプト作成に役立ちます。(例えば、The ColorFormat
グローバルプロパティなど。)
下記に説明するアプリケーション固有のプロパティに加えて、SenseTalkには、テスト実行の過程でシステムテスト(SUT)とのインタラクションに関連するEggplant Functional用のRun Optionsのグローバルプロパティも含まれています。
これらのグローバルプロパティの多くはEggplant FunctionalのTextとRunの設定(Eggplant > Preferences)に表示されま す。グローバルプロパティとして使用することで、スクリプトごとに、または単一のスクリプト内で複数回変更することができます。スクリプト内でプロパティの値を変更すると、その実行時間の値が影響を受けますが、アプリケーションの設定で設定された値は変更されません。
ローカルプロパティとグローバルプロパティの使用に関する一般的な情報については、SenseTalkのローカルとグローバルプロパティを参照してください。
The CaptureScreenImageFormat
グローバルプロパティ
値: PNG
、JPG
、または TIFF
デフォルト: PNG
挙動: テスト実行中にスクリーンショットをキャプチャする際に、the CaptureScreen
コマンドが使用する画像ファイルフォーマットを変更します。
例:
set the CaptureScreenImageFormat to JPG
The CaptureScreenJPGCompressionQuality
グローバルプロパティ
値: 1
-100
の間の整数デフォルト: 100
(無圧縮;可能な限り無損失)
値: 1~1000の範囲の数値
挙動: the CaptureScreen
コマンドでキャプチャされたJPG形式のスクリーンショットの圧縮品質を調整します。この数字は、画像圧縮中に保持される画像品質のパーセンテージを示し、1
は画像データの損失が多く品質が大幅に低下することを示し、100
は圧縮が可能な限り100%の元の品質を保持することを意味します。
例:
set the CaptureScreenJPGCompressionQuality to 75 -- 圧縮品質を下げ、ファイルをさらに小さくしますが、一部の画像の明瞭さを犠牲にします
The CaptureScreenScaleFactor
グローバルプロパティ
デフォルト: 1 (フルサイズ)
値: 0 から 1 の間の小数値。
挙動: the CaptureScreen コマンドでキャプチャされた画像のスケールを調整します。例えば、the ScaleFactorForCaptureScreen
を.5に設定すると、スクリーンショットが保存される前に、その画像の寸法(高さと幅の両方)を半分にします。したがって、1000x1000ピクセルの画像は500x500ピクセルに削減されます。
この機能はCaptureScreenコマンドでキャプチャした画像に特有のものであり、画像検索に使用されるスケールファクタとは異なります。キャプチャした画像を検索目的でスケールする方法については、Finding ImagesページのImage ScalingまたはThe ScaleFactors
Global Propertyを参照してください。
例:
set the CaptureScreenScaleFactor to .5 -- これにより、画像のスケールが半分になります
The CollectionFilter
グローバルプロパティ
値: Name
とDescription
の1つまたは両方を含むプロパティリスト
デフォルト: フィルタなし
動作: 指定された文字列を含む名前または説明の画像に検索を制限します。
画像に説明を設定するには、スイート内の画像ビューアを使用します。
例:
Set the CollectionFilter to (Name: "English", Description: "release 5.0")
例:
Params SUTModel
if SUTModel contains "iPhone" or SUTModel contains "iPad" then
set the initialsuites to "NopCommerceiOS.suite"
else
set the initialSuites to "NopCommerceAndroid.suite"
end if
the CollectionFilter
をリセットするには、値を空に設定します。
例:
Set the CollectionFilter to empty
The CommandLineOutput
グローバルプロパティ
値: True
(またはOn
、またはYes
)、False
(またはOff
、またはNo
)
デフォルト: False
動作: The CommandLineOutput
は、UnixまたはWindowsのコマンドラインからスクリプトを実行したときに標準出力ストリームにメッセージを出力するかどうかを制御します。
- Off: 標準出力(stdout)には何も出力されません。
- On: スクリプトの出力全体がEggplant Functionalのグラフィカルインターフェースに表示されると同時に標準出力ストリームにも送信されます。
例:
Set the CommandLineOutput to On
例:
SetOption CommandLineOutput, Off
The CommandLineOutput
はrunscript command line optionとしても利用できます。
The CompareScreenAction
グローバルプロパティ
値: ShowPanel
、LogWarning
、LogError
、またはShowPanelAlways
設定を区別するための略語も許されています:Panel
、Warning
、Error
、またはAlways
値: リモートクリップボードの内容
動作: このグローバルプロパティは、CompareScreen
コマンドを実行したときのアクションを制御します。このプロパティを使用して、スクリプトの実行中の動作を変更することができます。利用可能なオプションは次のとおりです:
ShowPanel
: 画面の違いが検出された場合、Compare Screenパネルが開きます。LogWarning
: 画面の違いが検出された場合、警告メッセージがログに記録されます。LogError
: 画面の違いが検出された場合、エラーメッセージがログに記録されます。ShowPanelAlways
: 画面の違いが検出されてもされなくても、Compare Screenパネルが開きます。
例:
set the CompareScreenAction to "Always"
例:
BeginTestCase "Detect Full Screen Differences"
// パネルを表示せずに警告をログに記録するように、比較スクリーンのグローバルプロパティを設定します
set the CompareScreenAction to "LogWarning"
Log "変更する前に、キャプチャした矩形が期待どおりに見つかることを確認します"
"Contacts"をクリック -- チュートリアルSutをデフォルトの画面に戻す
CompareScreen名前:"tutorialSutMenus"
Log "さあ、チュートリアルSutの画面を変更しましょう"
"Favorites"をクリック
Log "...そして再度CompareScreenを実行"
CompareScreen名前:"tutorialSutMenus"
EndTestCase "全画面の違いを検出"
関連:
CompareScreen
コマンド- * [Eggplant FunctionalでのUIテストにおけるCompare Screenの使用](/epf/ja/23.4/epf-compare-screen-ui-testing)
----------sensetalk
デフォルト: ShowPanel
デフォルト: 空
動作: このプロパティを使用すると、character
プロパティを使用して行われるイメージ検索のためのデフォルトのキャラクターコレクションを設定できます(つまり、キャラクターコレクションを対象とした検索)。 currentCharacterCollection
に値を設定すると、character
検索から characterCollection
プロパティを省略することができます。また、readCharacters
関数の呼び出し時にも characterCollection
プロパティを省略することができます。 readCharacters
にキャラクターコレクションの名前を指定するか、characterCollection
プロパティで指定することで、currentCharacterCollection
グローバルプロパティの値を上書きすることができます。
例:
set the currentCharacterCollection to "iPhoneCharacters"
関連:
The DefaultCaptureScreenSize
グローバルプロパティ
値: 画像をキャプチャする時点でのSUTの幅と高さを表す値のリスト。(width
,height
)として指定します。
デフォルト: 空
動作: The DefaultCaptureScreenSize
はEggplant Functional v12.20以前にキャプチャされた任意の画像に対して、画像キャプチャ時のSUTのデフォル トスクリーンサイズを設定します。これは画像検索におけるDynamic Scalingで使用します。詳細はDynamic Scalingを参照してください。
例:
set the DefaultCaptureScreenSize to (1024,768)
----------sensetalk
デフォルト: 空
値: True
(または On
, または Yes
), False
(または Off
, または No
)
動作: The DefaultUseMarkup
はテキストプロパティリストのTextプロパティ内でサポートされているテキストマークアップが認識されるかどうかを決定します。the DefaultUseMarkup
がyes
に設定されている場合、サポートされているマークアップは生成されたテキスト画像をフォーマットするために使用されます。the DefaultUseMarkup
がno
に設定されている場合、マークアップはリテラルテキストとして扱われます。 (マークアップは常にOCRテキストエンジンを使用するテキストプラットフォームでリテラルテキストとして扱われます。) 例:
例:
set the defaultUseMarkup to No
例:
setoption DefaultUseMarkup, Yes
The FinalSuites
グローバルプロパティ
デフォルト: なし
値: 一つまたはそれ以上のスイート名
動作: The FinalSuites
グローバルプロパティは、スクリプト自身のスイートが検索された後に、スクリプトまたは画像リソースを検索するスイートまたはスイートを決定します。(the InitialSuites
に名前がつけられたスイートが最初に検索され、次にスクリプト自身のスイートが検索され、その後にthe FinalSuites
が検索されます。)
例:
Set the FinalSuites to ("FallBack") //Sets the FinalSuites to a suite named "FallBack"
例:
set the FinalSuites to the folder of SuiteInfo().Path & "common.suite"
The FinalSuites/InitialSuites
はグローバルプロパティで指定されたスイートをデフォルトのスイートディレクトリから検索します。スイートがデフォルトのスイートディレクトリに存在しない場合、その完全なファイルパスでスイートを参照する必要があります。
例:
set the FinalSuites to "C:\AutomationScripts\common.suite"
The FinalSuites
は、スクリプト自体のスイートが検索された後に、the FinalSuites
スイートとヘルパースイートが検索される点で、ヘルパースイートと同様の動作をします。
The ForceScreenRefresh
グローバルプロパティ
デフォルト: False
値: Boolean
。 True
(またはOn
、またはYes
)、 False
(またはOff
、またはNo
)
動作: The ForceScreenRefresh
は、各コマンドの後にEggplant Functionalがビューアウィンドウを更新するかどうかを決定します。
The ForceScreenRefresh
はまれにしか必要とされませんが、スクリプトの実行を大幅に遅くします。しかし、多くの画面アーチファクトを生成したり、VNCサーバーを介してうまく表示しないソフトウェアを実行したりするSUTでは役立つ場合があります。
例:
SetOption ForceScreenRefresh, true
The HotSpotScaling
グローバルプロパティ
デフォルト: Inner
値: Inner
, All
, None
動作: このプロパティは、スケール画像を検索するときに画像ホットスポットがスケールするかどうかを決定します。値は次のとおりです:
- Inner: ホットスポットが画像の検索可能なピクセル内にある場合、それは画像と共にスケールします。ホットスポットが画像からオフセットされている場合、それはスケールされません。
- All: ホットスポットは、スケール画像を検索するときに常に比例してスケールします。
- None: スケール画像を検索するときにホットスポットはスケールされません。
例:
Set HotSpotScaling to None
例:
params SUTType
If SUTType is "mobile" then set the HotSpotScaling to All //Sets the HotSpotScaling to All if "mobile" is passed in as the SUTType parameter value
The HotSpotScaling
は、画像のスケーリングを行う際に特に関連しています。これはクロスモバイルテストでよく使用されます。
The ImageUpdate
グローバルプロパティ
デフォルト: Manual
デフォルト: Manual
動作: The ImageUpdate
グローバルプロパティは、スクリプト実行中にImage Update panelとOCR Update panelがどのように動作するかを決定します:
- Auto: Image UpdateとOCR Updateは、自動的に画像とOCRの失敗を修正し、スクリプトの実行を続行します。最初の画像またはOCRの失敗は警告として記録され、任意の修正アクションも警告として記録されます。変更はキャッシュされますが、スクリプトが更新されるまでコミットされ ません(OCR)または変更が適用されます(画像)。これは特定のスクリプトの実行に対するResultsのActionドロップダウンリストを使用します。
- 手動: 画像またはOCR検索が失敗すると、Image UpdateパネルとOCR Updateパネルが開きます。修正した画像またはOCR検索で進行するか、またはスクリプトを失敗させることを選択できます。Updateパネルが開いている時間は、Eggplant Functionalの実行オプション設定のSystem Paneで調整できます。手動はEggplant Functional GUIでスクリプトを実行している場合にのみ有効です。
- オフ: Image UpdateパネルとOCR Updateパネルは、スクリプト実行中には使用されません。これにより、画像またはOCR検索が失敗した場合にスクリプトがより早く失敗します。
例:
Set the ImageUpdate to Manual
例:
SetOption ImageUpdate, Off
関連:
the ValidateImageFound
このコマンドは、廃止されたthe ImageDoctor global propertyの代わりに使用されます。
The InitialSuites
グローバルプロパティ
デフォルト: なし
値: 一つまたは複数のスイート名
動作: The InitialSuites
グローバルプロパティは、現在のスクリプトが呼び出すスクリプトまたは画像リソースを探す最初のスイートまたはスイートを決定します。(the InitialSuites
に名前が付けられたスイートは、呼び出しスクリプトの自身のスイートよりも優先されます。)
例:
Set the InitialSuites to ("Windows8Common", "Windows8Calculator")
例:
Params SUTModel
if SUTModel contains "iPhone" or SUTModel contains "iPad" then
set the initialsuites to "NopCommerceiOS.suite"
else
set the initialSuites to "NopCommerceAndroid.suite"
end if
The InitialSuites/FinalSuites
は、グローバルプロパティで指定されたスイートをdefault suite directoryで検索します。スイートがデフォルトのスイートディレクトリに存在しない場合、スイートをその完全なファイルパスで参照する必要があります。
例:
set the InitialSuites to "C:\AutomationScripts\NopCommerceAndroid.suite"
The OpenTestCases
グローバルプロパティ
値: 結果のプロパティリストのプロパティリスト。例:
(@"Login.script":(Errors:"0", Exceptions:"0", StartTime:"2016-10-10 16:02:20 -0600", Successes:"0", TestCase:"Login.script", Warnings:"0"), WelcomeLoadTime:(Errors:"0", Exceptions:"0", StartTime:"2016-10-10 16:02:20 -0600", Successes:"0", TestCase:"WelcomeLoadTime", Warnings:"0"))
値: 時間値。
動作: The OpenTestCases
グローバルプロパティは、その時点までに開いているすべてのテストケースによって収集された情報にアクセスするために使用されます(テストケースとは何かについての情報は、The BeginTestCase and EndTestCase Commandsを参照してください)。
初期ハンドラ(スクリプト自体)はテストケースと見なされ、the OpenTestCases
グローバルプロパティによって1つのテストケースとして報告されます。宣言されたテストケースが開いていない場合、スクリプト(初期ハンドラ)が唯一の開いているテストケースとして報告されます。
例:
BeginTestCase "WelcomeLoadTime"
//Execute some actions
log the OpenTestCases //Accesses information about the current test cases
//Execute further actions if desired
EndTestCase "WelcomeLoadTime"
log the result //Logs the results property list for the test case after it has ended
テストケースによって作成された結果のプロパティリストは、the result
を使用してテストケースが閉じた後にアクセスすることができます。このアクションは、ケースを閉じるEndTestCase
コマンドの直後に行う必要があります。上記の例では、その方法が示されています。
The MultipleFoundAction
グローバルプロパティ
値: UseFirstLocation
, ShowPanel
, LogWarning
, ThrowException
。これらの値はそれぞれ First
, Panel
, Log
, Throw
と略すことができます。
動作: ランタイムで Run > Image Update > When Multiple Occurrences Are Found の設定をオーバーライドするために使用できます。
例:
set the MultipleFoundAction to LogWarning
The ReadTextSettings
グローバルプロパティ
動作: The ReadTextSettings
は、ReadText()
およびReadTable()
関数で使用されるデフォルト設定のプロパティリストで す。
テキスト設定
例:
Set the readTextSettings to (dpi:96, multiLine: off)
例:
set Characters to "A".."Z" &&& "a".."z" &&& comma // Stores all uppercase and lower case letters as well as , as a list into a variable
set the readTextSettings to (validCharacters:Characters) // Uses the list inside Characters to indicate the ValidCharacters
例:
if param(1) is "Phone" then // Param(1) refers to the first parameter value passed into the script
set the ReadTextSettings to (DPI:200)
set the HotSpotScaling to all
set the defaultScale to .5
end if
log readText("StatusUpperLeft","StatusLowerRight") //This and subsequent readText and readTable functions will use dpi:200
The RemoteClipboard
グローバルプロパティ
デフォルト: なし
値: プロパティリスト
動作: The RemoteClipboard
は、SUTのクリップボードにアクセスを提供します。このグローバルプロパティを変更することで、SUTのクリップボードの内容を変更します。
例:
setOption RemoteClipboard, "Hello"
例:
set the remoteclipboard to "www.google.com"
Tap "AddressBar"
mousebuttondown 1 // Holds down the left mouse button (a press on mobile), at the location where the preceding tap occurred
wait 2
mousebuttonup 1 // Releases the left mouse button/press
Tap "PasteDialog"
RemoteClipboard()
関数を使用して、SUTのクリップボードの内容を表示することができます。
SetRemoteClipboard
コマンドは、SUTのクリップボードを変更するための別の方法を提供します。