既知の問題 - Web ベース SAP
一般
UFT One SAP Solutions Add-in は、ほかの Web ベースのアドインがロードされていない場合にのみ使用することをお勧めします。
SAP Solutions Add-in は、Web 構成の設定を変更するため、ほかのアドインやアプリケーションに影響を与える可能性があります。
オブジェクトの認識
複数のブラウザ・ウィンドウ |
場合によっては、テスト実行中に複数のブラウザが開いているときに、UFT One が一部のオブジェクトを正しく識別できないことがあります。 回避策:[オブジェクト リポジトリ]ウィンドウで、Browser テスト・オブジェクトの[スマート認識を有効にする]チェック・ボックスの選択を解除します。 将来のテスト記録のために、「[オブジェクトの認識]ダイアログ・ボックス」でも Browser テスト・オブジェクトの[スマート認識を有効にする]オプションを無効にする必要があります。 |
iView |
最小化されたり折りたたまれた iView は、正しく認識されない場合があります。 |
SAP Enterprise Portal のフレーム |
場合によっては、SAP Enterprise Portal 内のフレームが iView オブジェクトではなく Web Frame オブジェクトとして認識されることがあります。 その一部のケースでは、フレーム名が動的に生成されています。 Web Frame オブジェクトはオブジェクトを識別するために name プロパティを使用するので、テストの実行時に UFT One がオブジェクトを認識できるようにするために、記録された name の値を修正して、適切な正規表現を使用するようにしなければなりません。 |
SAP Web テーブル・セル |
SAP Web テーブル・セル内のオブジェクトに対してオブジェクト・スパイを使用するかチェックポイントを作成しているときに、そのオブジェクトに対してまだクリックが実行されていない場合、UFT One はそのオブジェクトを WebElement として(適切な SAP Web オブジェクトではなく)認識することがあります。 回避策:SAP Web テーブル・セル内のオブジェクトに対してオブジェクト・スパイを使用したりチェックポイントを作成したりする前に、そのオブジェクトをクリックします。 |
ActiveScreen |
|
記録
テーブル |
テーブル・コントロールに対するステップの記録と実行を行う場合、クライアントに表示されているテーブルの内容だけが実際に使用可能です。 |
iView オプション・メニュー / SAP Enterprise Portal のタイトルバー |
iView オプションに対する操作と SAP Enterprise Portal のタイトル・バー内にあるオブジェクトに対する操作は、iView オブジェクトに対する SAP 操作ではなく Frame オブジェクトに対する Web 操作として記録されます。 |
スクロール・バーのドラッグ |
SAP GUI for HTML テーブルのスクロール・バーをドラッグする操作は記録されません。 回避策:SAP GUI for HTML テーブル内のスクロールは、スクロール・ボタンをクリックすると記録できます。代わりに、ステップ・ジェネレータかエディタを使用して、SAPTable.Object.DoScroll("up") または SAPTable.Object.DoScroll("down") ステートメントをテストに挿入することもできます。 |
SetCellData メソッド |
SAP GUI for HTML の一部のテーブルでは、SetCellData メソッドが正しく記録されません。 回避策:記録時に、テーブル・セルのテキスト値を編集した後、次のいずれかを実行します。
|
SAPList オブジェクト |
SAPList オブジェクトの記録では、リストのボタン部分ではなく入力部分をクリックしないと、UFT One でオブジェクトを認識できません。 |
S/4HANA アプリケーションの SAPTable オブジェクト |
Internet Explorer で記録する場合、S/4 HANA アプリケーションの SAPTable セルで Enter キーを押しても、UFT One がステップを記録しません。 回避策:Enter キーが押されたときに UFT One で SAPTable.Submit ステップを記録されるようにするには、次のレジストリ・キーを作成し、その値を 1 に設定します。 Computer\HKEY_CURRENT_USER\Software\Mercury Interactive\QuickTest Professional\MicTest\Packages\SAPPackage\Settings\RecordSubmitForTableNavigateEvent |
ActiveScreen |
|
SAPDropDownMenu オブジェクト |
Chrome または Internet Explorer を使用している場合、UFT One は SAP CRM または WDA アプリケーション内の SAPDropDownMenu オブジェクトを記録できない場合があります。 回避策:UFT One15.0.1 以降:スパイを使用してオブジェクトを学習し、オブジェクト・リポジトリに追加します。次に、必要なステップを手動でテストに追加します。 |
CRM S/4 HANA での SAPTabStrip().Select 操作 |
Internet Explorer で SAPTabStrip().Select 操作を記録する際に、重複するステップが追加される場合があります。 回避策:スパイを使用してオブジェクトを学習し、オブジェクト・リポジトリに追加します。次に、必要なステップを手動でテストに追加します。 |
SAPTreeView の Activate メソッド |
SAPTreeView オブジェクトの Activate メソッドを Chrome で記録することはできません。 回避策:スパイを使用してオブジェクトを学習し、オブジェクト・リポジトリに追加します。次に、必要なステップを手動でテストに追加します。 |
SAP アプリケーションでのテストの実行
Fiori アプリケーション
2 つの連続したステップでの Set メソッドの使用
Fiori アプリケーションで作業する場合、sapUIObject の値をスクリプト内の変数に設定し、Set メソッドを 2 回続けて使用してテストを実行すると、エラーが発生する場合があります。
例:
set sapObject=Browser("DatePicker - sap.m").Page("DatePicker - sap.m").SAPUICalendar("DP1-describedby")
sapObject.SetDate "20150114"
sapObject.SetDate "000000"
次のいずれかの方法を使用して、スクリプトを更新します。
例:
set sapObject=Browser("DatePicker - sap.m").Page("DatePicker - sap.m").SAPUICalendar("DP1-describedby")
sapObject.SetDate "20150114"
sapObject.RefreshObject
sapObject.SetDate "000000"
例:
Browser("DatePicker - sap.m").Page("DatePicker - sap.m").SAPUICalendar("DP1-describedby").SetDate "20150114"
Browser("DatePicker - sap.m").Page("DatePicker - sap.m").SAPUICalendar("DP1-describedby").SetDate "000000"
Chrome の余分なオブジェクト
Chrome を使用している場合、特定のオブジェクトをオブジェクト・リポジトリに追加すると、UFT One によって多数の余分なオブジェクトが追加されます。
回避策:別のブラウザ(IE または Firefox)を使用するか、リポジトリから不要なオブジェクトを手動で削除してください。
SAPUICalendar での SetDate ステップの記録
Fiori アプリケーションで作業する場合、タイム・ピッカを使用するカレンダ・オブジェクトの SetDate は、時間の部分を正しく記録および実行しません。
回避策:WebEdit.Set ステップをテストに手動で追加します。
例:
WebEdit.Set "Jan 23, 2019, 11:46:00 AM"
SAPUIDateTimeInput での SetDateTime ステップの記録
Fiori アプリケーションで記録する場合、SAPUIDateTimeInput.SetDateTime は記録されません。
回避策:記録中に、SAPUIDateTimeInput オブジェクトで日付を選択する前に、テキスト・ボックスをクリックして、SAPUIDateTimeInput オブジェクトにフォーカスを合わせます。
Submit メソッドを使用するとブラウザが更新される
WEB アドインと SAP アドインの両方が有効になっている場合、webUtil を使用した後に Firefox/Chrome で submit メソッドを使用すると、ブラウザが更新されます。
回避策:
- webUtil の代わりに systemUtil を使用します。
-
submit メソッドの前に、DeviceReplay を使用して、フォーカス・ポイントを URL-Textbox から送信するオブジェクトに移動します。例:
WebUtil.LaunchBrowser "FIREFOX"
Browser("micclass:=browser").Navigate "https://sapui5.hana.ondemand.com/1.44.27/test-resources/sap/m/Dialog.html"
Browser("micclass:=browser").Page("micclass:=page").SAPUIButton("name:=Simple Dialog").Click
Set dr = CreateObject("Mercury.DeviceReplay")
ax = Browser("micclass:=browser").Page("micclass:=page").SAPUIDialog("name:=Simple Dialog").GetROProperty("abs_x")
ay = Browser("micclass:=browser").Page("micclass:=page").SAPUIDialog("name:=Simple Dialog").GetROProperty("abs_y")
dr.MouseClick ax,ay,LEFT_MOUSE_BUTTON
Browser("micclass:=browser").Page("micclass:=page").SAPUIDialog("name:=Simple Dialog").Submit
SAPUI5 固有の制限
デスクトップ/モバイル |
SAPUI5 Add-in は、デスクトップとモバイルの両方のアプリケーションをサポートするため、すべてのオブジェクトのすべてのメソッドがデスクトップとモバイルの両方のアプリケーションでサポートされているとは限りません。 |
アプリケーション警告メッセージ |
SAPUI5 テスト・オブジェクトに対してテストまたはコンポーネントを実行する場合、一部のオブジェクトのアプリケーション警告メッセージが表示されません。 回避策:次のいずれかを実行します。
|
ネストされたテーブル・オブジェクト |
SAPUI5 アプリケーションに、ネストされたテーブル・オブジェクトが含まれている場合、ネストされたテーブル・オブジェクトにチェックポイントを挿入すると、親 SAPUITable オブジェクトのみが表示されます。 回避策:ネストされた WebTable オブジェクトを選択して、親 SAPUITable オブジェクトのチェックポイントではなく、WebTable オブジェクトのチェックポイントを作成します。 |
SAPUIMenu オブジェクト |
オブジェクト・スパイを使用して SAPUIMenu オブジェクトを表示する場合、または閉じた状態で非表示になっている SAPUIMenu オブジェクトを記録する場合、次の操作ができない場合があります。
|
無効化されたコントロール |
モバイル SAPUI5 アプリケーションを使用する場合、UFT One は、アプリケーション・オブジェクトのプロパティの理由により、一部の無効化されたコントロール(SAPUIButton や SAPUITextEdit など)に対してオブジェクト・スパイを使用できません。 |
Internet Explorer 11 |
Internet Explorer 11 で作業しているときに、アプリケーションでボタン・クリックを実行するために下にスクロールする必要がある場合、SAPUIButton.Click メソッドはボタンをクリックしません。 回避策:代わりに、SAPUIButton.Submit メソッドを使用してください。 |
ChildObjects メソッド |
一部のオブジェクトで ChildObjects メソッドを使用すると、ブラウザによって異なる結果が返されます。 |
SAPWDJ 固有の制限
アドインのロード |
SAPWDJ Add-in をロードせずに SAP WDJ アプリケーションのオブジェクトを記録しようとすると、オブジェクトの一部しか正しく記録されません。 回避策:UFT Oneを再起動して SAP WDJ Add-in をロードします。 |
パフォーマンス |
実行セッション中に、SAP Web Dynpro Java(WDJ)を実行する SAP プラットフォームの応答にかかる時間が、対応するステップを UFT One が実行する時間よりも長くなる場合があります。 回避策:関連するステップの前に Wait ステートメントを追加するか、[オプション]ダイアログ・ボックスの[テスト実行]表示枠([ツール]>[オプション]>[GUI テスト]タブ>[テスト実行]ノード)にある[ステップ実行ごとの遅延時間]オプションを必要な待ち時間(ミリ秒)に設定します。 |
サポートされない機能 |
SAP WDJ アプリケーションでは、次の機能はサポートされていません。
|
SelectCell メソッド |
SAPWDJTable オブジェクトのステップの記録中に編集不能なセルを選択すると、SelectCell メソッドが記録されないことがあります。 |
ポップアップ・ウィンドウを開くリンク |
ポップアップ・ウィンドウを開くリンクがテーブルに含まれている場合、SAPWDJTable.SelectItemInCell メソッドを使用してリンクをクリックすると、UFT Oneは .SelectItemInCell を正しく実行しません。 回避策:linkFuncLibr 関数ライブラリをテストに関連付けます。この関数ライブラリは、<UFT One インストール・フォルダ>\dat\Extensibility\Web\Toolkits\SAPWDJ\FunctionLibraries\linkFuncLibr.qfl にあります。 |
SAP Business Networks アプリケーション
SAPWebExt リスト |
SAP FieldGlass の SAPWebExt リスト・オブジェクトに対するスパイ、またはチェックポイントの追加はサポートされていません。 SAPWebExtList.Select メソッドは、SAP FieldGlass のテスト時に失敗する可能性があります。この場合は、代わりに WebEdit.Set メソッドを使用してください。 |
SAPWebExtTable オブジェクト |
SAPWebExtTable オブジェクトに対するチェックポイントはサポートされていません。 回避策:次のいずれかを実行します。
|
SAP WebDynpro ABAP アプリケーション
SAPButton.Click メソッド |
WebDynpro ABAP サイトで SAPButton.Click メソッドを記録すると、ブラウザの遅延が発生する可能性があります。 回避策:次のいずれかを実行します。
|
SAPTable オブジェクト |
|
SAPTable.OpenPossibleEntries |
IE または Chrome を使用している場合、一部のアプリケーションで SAPTable.OpenPossibleEntries 操作が記録されません。 回避策: 最初にセルをクリックしてから、セルの横にあるアイコンをクリックして、OpenPossibleEntries を記録します。 記録されている余分な SetCellData ステップをすべて削除します。 |
SAPTable.SelectCell メソッド:一般的な記録 |
SAP WDA 7.5 アプリケーションの SAPTable オブジェクトに対して SelectCell メソッドを使用する場合:
|
SAPTable.SelectCell メソッド:アプリケーションで非表示になるテーブル・オブジェクトの記録 |
選択操作が実行された直後にテーブル・オブジェクトがアプリケーションで非表示になる場合、SelectCell メソッドはテーブル・オブジェクトで記録されません。 回避策:記録後に SAPTable.SelectCell メソッドを手動で追加します。 |
動的表示
WebDynpro ABAP または EP アプリがスクロール時に動的表示機能を使用するように構成されている場合、現在表示されていないセルまたはリスト・データを取得する際に問題が発生する可能性があります。
これを回避するには、ステップの実行、スパイ、または強調表示を行う前に、すべてのデータが完全にロードされていることを確認してください。
例:
テーブルの場合の回避策:
SAPTable.GetCellData メソッドの前に、下にスクロールしてすべての行データを表示するステップを追加します。
次に、現在の行の値を指定して GetCellData メソッドを使用します。
例:
'get value in row 1
print Browser("WDR_TEST_C_TABLE [Web").Page("Web Dynpro Test Suite").SAPTable("[Demo Table Part 1]").GetCellData (2,4)
For Iterator = 1 To 4 Step 1
wait 1
Browser("WDR_TEST_C_TABLE [Web").Page("Web Dynpro Test Suite").SAPButton("SAPButton_2").Click
Next
'get value in row 7 which is shown in line 4 after scroll
print Browser("WDR_TEST_C_TABLE [Web").Page("Web Dynpro Test Suite").SAPTable("[Demo Table Part 1]").GetCellData (4,4)
リストの場合の回避策:
GetItem メソッドを使用する前、またはスパイする前に、SAPList オブジェクトをアクティブにします。
たとえば、最初にリストを選択またはクリックするか、テストで Select または Click メソッドを使用します。
その他の参照項目: