サーバーでのシミュレーション

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  シミュレーション >

サーバーでのシミュレーション

サーバーでのシミュレーションは MobileTogether Server [プロジェクト | ワークフローのシミュレーションのためにサーバーを使用する] を使用してシミュレーションを実行しま。 [メッセージ] ペイン] にメッセージをレポートします。デザインのエラーをテストするための追加機能として、このシミュレーションによりデータソースが正確な場所にあるかどうか、 URL が正確であるか、現在のサーバー設定が適切であるか、サーバーが使用される DB、URL、およびファイルにアクセスするパーミッションがあるかを確認することができます。

 

サーバーでのシミュレーションのワークフローは以下の通りおこなわれます:

 

1.MobileTogether Designer 内のアクティブなデザインファイルのワークフローは一時的に MobileTogether Server にパスされます。このようにすると、サーバーからデザインが機能するか確認するためにデザインをサーバにデプロイする必要がなくなります。
2.サーバーが MobileTogether Designer のシミュレーターのワークフローとして機能します。このようにシミュレーターがクライアントの役割をはたします。

 

シミュレーションする言語

デザイナーサーバー のためのシミュレーションする言語は [プロジェクト | シミュレーションする言語] コマンドで選択します。クライアント シミュレーション の言語は、シミュレーションが実行されるモバイルデバイスの言語と同じです。

 

 

シミュレーションの実行

 

1.MobileTogether Server を開始します。実行するには 「MobileTogether Server ユーザー マニュアル」 を参照してください。
2.MobileTogether Server の Web UI でソリューションの作業用ディレクトリを設定します。 [設定 | サーバー側ソリューション作業ディレクトリ ] 下のスクリーンショット参照)。デザインのすべての相対パスはこの設定で指定されたディレクトリに相対して解決されます。サーバーでのシミュレーションが正しく作動するためには、参照されるファイルが保存されるディレクトリのパスを入力しなければなりません。

MTSSetSolutionsWorkingDir

3.MobileTogether Designer でサーバー設定 が正確に設定されている。
4.MobileTogether Designer で [プロジェクト | ワークフローのシミュレーションのためにサーバーを使用する] を選択する。
5.サーバーにアクセスするために必要な資格情報を確認された場合、 user-name/passwordroot/root の組み合わせを入力するか、サーバーでのシミュレーションを実行するために設定した特権のある他のユーザーの資格情報を入力します。ユーザーへの特権の割り当てに関しては「MobileTogether Server ユーザー マニュアル」を参照してください。

 

シミュレーションウィンドウが開かれワークフローが実行されます。

Click to expand/collapse

 

ファイルの場所

MobileTogether Server がシミュレーションに使用される場合、デザインにより参照されるファイルは、サーバー側ソリューション作業ディレクトリとして指定されているディレクトリかこのディレクトリの子孫ディレクトリである必要があります。 (作業用ディレクトリの設定は MobileTogether Server 設定ページで行うことができます。)

 

絶対パスが使用される場合、ファイルは作業用ディレクトリまたは作業用ディレクトリの子孫ディレクトリに存在しなければなりません。
相対パスが使用される場合、パスは作業用ディレクトリに相対して解決されます。

 

シミュレーターの機能

[シミュレーター] ウィンドウには次の機能があります:

 

左側の (シミュレーション)ペインはシミュレーションを表示します。シミュレーションペインのためのオプションは下で説明されています。
右側の (ページソース) ペインはシミュレーションの展開中に変化する ページソースを表示します。 XML データ ペインのためのオプションは下で説明されています。
シミュレーションの展開中 MobileTogether Designer GUI の[メッセージ] ペイン は、発生しているすべてのアクティビティのステップ バイ ステップのレポートを作成します。ですから、ワークフローの展開の各ステップで何がおこっているのか確認することができます。 これはデザインファイルのテストおよびデバッグを行うとても有益な機能です。
ϖ   デザイナーのシミュレーションがサーバーとクライアントの両方のアクティビティに関してレポートを行う。
ϖ   サーバーのシミュレーションはクライアントメッセージに関してのレポートを行う。
ϖ   クライアントのシミュレーションはサーバーメッセージに関してのレポートを行う。
ユーザー インタラクションの有効化を必要とするコントロール。上のスクリーンショットでは、例えば、コンボ ボックスが有効化されています。

 

 

シミュレーションペインツールバー

ツールバーシミュレーションペインには次のボタンが含まれています (左側から右側):

 

戻る: ページがサブページの場合、[戻る] をクリックするとサブページが閉じられます。ページがトップページの場合は、シミュレーターが閉じられます。「戻る」ボタンのクリック時も参照してください。
送信: ページが最後のページではない場合、[送信] をクリックすると、次のページに移動します。ページが最後のページの場合は、ワークフローが終了されます。 送信ボタンのクリック時 も参照してください。
ページの更新: 基になるデータが変更されると、[ページの更新] が有効化されます。[ページの更新] をクリックすると、ページが更新されたデータと共に更新されます。
方向の変更: ビューを横長と縦長の方向に切り替えることができます。
シミュレーションの再開: シミュレーションを再開することができます。
テストケースの記録の停止: テストケースの記録 が開始されると、シミュレーターが開かれ、記録がシミュレーター内で実行されます。このボタンをクリックすると以下が発生します: (i) テストケースの記録 が停止され (ii) 記録されたテストケースの名前を指定することのできる「記録済みのテストケースの確認」ダイアログが開かれます。
次のステップの再生: 現在実行中のテストケースの再生 内の次のステップが再生されます。再生がステップバイステップに設定されていると、このボタンは有効化されます。テストケースの再生の再生オプションを参照してください。
スナップショットの記録: 記録されているテストケース のスナップショットを記録します。スナップショットの記録が (自動ではなく) 手動に設定されている場合、このボタンは有効化されます。 テストケースの記録記録オプション  を参照してください。
プッシュ通知: 記録済みプッシュ通知の管理 (シミュレーション) ダイアログが開かれます。 使用方法に関しては、プッシュ通知のシミュレーションを参照してください。
送信: ページが最後のページではない場合、「送信」 をクリックすると、次のページに移動します。ページが最後のページの場合、ワークフローは終了されます。 送信ボタンのクリック時も参照してください。
ページの更新: ページ更新オプション手動 に設定されている場合、このボタンは表示されるようになります。「ページの更新」 をクリックすると、ページが変更されたデータと共に更新されます。

 

 

シミュレーターオプション

「シミュレーターオプション」 ツールバーボタンをクリックすると、シミュレーターのためのドロップダウンリストが表示されます (下のスクリーンショット参照)。 各オプションは下記で説明されています。デフォルトの設定は、オプションダイアログのシミュレーション 1 タブ 内で指定されています。シミュレーター内で設定を変更すると、新規の設定がデフォルトになり、シミュレーション 1 タブなどで表示されます。

MTDSimulatorSimulationPaneOptionsNew

タイマーの停止: タイマーが 間隔で実行する に設定されており、アクションが指定された間隔で実行されるように定義されている場合、[タイマーの停止] をクリックすることによりタイマー(結果的にアクション) を停止する事ができます。これによりこれらのアクションによるメッセージの多くをクリアする事ができ、他のメッセージやワークフローの他の部分を更に簡単に分析する事ができます。
サーバーアクセスの禁止: サーバーへのアクセスを無効化し、サーバーへの接続エラーの状況下でのソリューションの振る舞いをテストする事ができます。クリックされると、ボタンは [サーバーへのアクセスの有効化ボタン] に切り替えられます。 詳細に関してはサーバー接続エラーを参照してください。
購入済みのサーバー: デザイナー内およびクライアント上でのトライアルランをシミュレートする場合、 MobileTogether Server ライセンスが既に購入済みであることをシミュレートします。サーバー上でのシミュレーションの場合、サーバー上のライセンスの実際の購入状況が返されます。
WiFi が音の状態でシミュレート: オンに切り替えられた場合、 mt-connected-via-wifi は、XPath 拡張関数を true() に設定し、オフに切り替えられた場合は、 false() を返します。これにより、シミュレータは WiFi へのアクセスが使用できる状態でのシミュレーションを行います。このように、 WiFi へのアクセスを必要とするデザインのシナリオをシミュレートすることができます。
LAN がオンの状態でシミュレート: オンに切り替えられた場合、 mt-connected-via-lan は、XPath 拡張関数を true() に設定し、オフに切り替えられた場合は、 false() を返します。 これにより、シミュレータは  LAN  へのアクセスが使用できる状態でのシミュレーションを行います。 このように、 LAN へのアクセスを必要とするデザインのシナリオをシミュレートすることができます。
AppStore App としてシミュレート : 有効化されると、静的グローバル変数 MT_IsAppStoreApptrue() に設定し、無効化されると false() に設定します。これによりシミュレーションはこの変数の値の条件により実行されます。
カメラがオンの状態をシミュレートする: オンに切り替えられると、シミュレーターはデバイスのカメラ機能が使用できるモノとして振る舞います。 これによりカメラ機能を必要とするデザインシナリオをシミュレートすることができます。
ギャラリーがオンの状態をシミュレートする: オンに切り替えられると、シミュレーターはデバイスのギャラリー機能が使用できるモノとして振る舞います。 これによりギャラリーへのアクセス機能を必要とするデザインシナリオをシミュレートすることができます。
マイクがオンの状態をシミュレートする: オンに切り替えられると、シミュレーターはデバイスのマイクロフォン機能が使用できるモノとして振る舞います。  これによりマイクへのアクセス機能を必要とするデザインシナリオをシミュレートすることができます。
NFC がオンの状態をシミュレートする: オンに切り替えられると、mt-nfc-started XPath 拡張関数が true() に設定され、オフに切り替えられると、 false() に設定されます。 NFC が有効化され、NFC アクションを実行することができることをシミュレーターに示します。 実際の NFC データは NFC サンプルファイルを介してシミュレーターに提供されます。
GPS がオンの状態をシミュレートする:オンに切り替えられると、 mt-geolocation-started XPath 拡張関数が true() に設定され、オフに切り替えられると、 false() に設定されます。 シミュレーターがデバイスの GPS ロケーター開始の通知を受け取ると、 位置情報機能が使用できるものとしてソリューションを実行します。 シミュレーションのために位置情報を提供するために 位置情報 XML ファイル を使用してダミーの位置情報を提供することができます。
連絡先がオンの状態をシミュレートする: オンに切り替えられると、シミュレーターはデバイスのアドレス帳機能が使用できるモノとして振る舞います。 これによりアドレス帳へのアクセス機能を必要とするデザインシナリオをシミュレートすることができます。連絡先は サンプルファイル またはMicrosoft Outlook 連絡先 からシミュレートされます。オプションダイアログのシミュレーションタブ内で使用するオプションを指定することができます。
カレンダーのシミュレーション: オンに切り替えられると、シミュレーターはデヴァイスのカレンダーが使用できるかのように振る舞います。これにより、カレンダーへのアクセスを必要とするデザインのシナリオをシミュレートすることができます。カレンダーは サンプルファイル または Microsoft Outlook 連絡先 からシミュレートされます。オプションダイアログのシミュレーション 2 タブ内で使用するオプションを指定することができます。関連する情報に関しては、 DB の読み取り構造 アクションを参照してください。
電話がオンの状態をシミュレートする: オンに切り替えられると、シミュレーターはデバイスの電話機能が使用できるモノとして振る舞います。  これにより電話へのアクセス機能を必要とするデザインシナリオをシミュレートすることができます。
SMS がオンの状態をシミュレートする: オンに切り替えられると、シミュレーターはデバイスの SMS 機能が使用できるモノとして振る舞います。 これにより SMS へのアクセス機能を必要とするデザインシナリオをシミュレートすることができます。
タブの順序の表示: オンに切り替えられていると、タブ順序のシーケンスの一部になるように定義されている コントロールは、番号を含む青い丸でマークされています。番号はタブ順序シーケンス内のコントロールの位置を示しています。
シミュレーションの再開: シミュレーションを再開します。
デフォルトオプションの設定: シミュレーションペインのオプションをデフォルトの設定にリセットします。

 

 

ページソースペインオプションと機能

これらのオプションは[ページソース] メニュー内と ページソースツールバーで使用する事ができます。

 

XPath の評価: XPath 式を評価することのできる XPath/XQuery 式の編集ダイアログを開きます。 XPath 式はシミュレーションの実行中、[スタイル & プロパティ] ペインからも編集することができます。
永続データをクリアして再開: 永続データをクリアして、シミュレーションを再開します。
検索: ページソースのルート要素から開始するページソースペイン内のページソース内のテキストを検索することができます。
ページソースペインでは、ツリーの一部をコピーしてツリーの他の箇所に貼り付けることができます。この機能は、 DB 記録などのデータをコピーして、シミュレーションに更なるデータを追加するために役にたちます。 コピーされたノードはシミュレーションの間のみ使用することができます。
ページソースのノードを右クリックし、「XML をロード」を選択すると、選択された XML ファイルによりページソース全体が置き換えられます。ロードされた XML ファイルの構造がこのページソースで期待される構造に一致しない場合、このページソースをベースとするデザインのこれらの部分にはエラーが含まれるようになります。
ページソースのノードを右クリックし、 「XML を保存」を選択すると、 選択された XML ファイルにページソース全体が保存されます。
ページソースのノードを右クリックすると、そのノードの XPath ロケーター式をXPath をコピーする」コンテキストメニューコマンドを選択して、クリップボードにコピーすることができます。

 

メモ:サーバーに接続する際に問題が生じる場合、サーバーの設定を確認してください。手順については「MobileTogether Server ユーザー マニュアル」を参照してください。

 

シミュレーター内のページソースの XML ツリーを編集する

シミュレーター内のツリーは、多種のページソースの XML データを表示し、シミュレーションが展開中にこれらの値がどのように変化するかを表示します。 シミュレーター内で切り取り/コピー/貼り付け/削除とドラッグアンドドロップを使用して、 XML ツリーを直接編集します。 (XML ツリーのコンテキストメニュー内の編集コマンドを使用することができます。) シミュレーションペインは即時変更されたデータを表示します。この機能により、異なる手動で入力されたデータを含む変更された XML データ構造と共にソリューションをテストします。結果、ソリューションはより徹底してテストされ、テストはシミュレーション内で素早く実行することができます。

 

シミュレーター内の XML ツリーのコンテキストメニュは、以下の機能を提供します:

 

XML のロード: (XML ツリーと同じ構造と要素を持つ) 外部 XML ファイルを XML ツリーにロードします
XML の保存: XML ツリーの構造とデータを希望する場所に保存します。
XMLSpy 内での表示: Altova XMLSpy プログラム内で XML ツリーを開きます。
このツリーをベースにした $XML 構造: ページソースの構造をシミュレーター内の XML ツリーの構造に上書きします。

 

サーバー IP アドレスとネットワーク ファイアーウォールの設定

使用中のサーバーは (インターネットを介してアクセスすることのできる) 公開された IP アドレス、および/または (例えば、企業内ネットワーク内の WiFi など、プライベートのネットワーク内でアクセスすることのできる) プライベートの IP アドレスを持つことができます。もし、モバイルクライアントデバイスがインターネットにサーバーのプライベートの IP アドレスを使用して、 アクセスした場合、アクセスはうまくいきません。これは、プライベートの IP アドレスは、インターネット上では知られておらず、解決することができないからです。 クライアントデバイスが、プライベートの IP アドレスを使用する場合、 クライアントデバイスはプライベートネットワークへのアクセスを既に取得している必要があります。

 

サーバーへのアクセスを確実にするために、以下を行ってください:

 

インターネットを介してアクセスできるように、サーバーに公開された IP アドレスを与えます。クライアントデバイスでは、この公開された IP アドレスを使用してサーバーにアクセスします。
ファイアーウォールを使用しており、 MobileTogether Server をサーバーにプライベート IP アドレスを使用して(プライベートのネットワーク内に) インストールする場合、 ネットワークのファイアーウォールを使用して、 公開された IP アドレス/ポートの組み合わせに送信されたリクエストを使用中の MobileTogether Server サーバーに転送します。クライアントデバイスでは、公開された IP アドレスを使用してください。

 

MobileTogether Client 通信のために使用されるサーバーポートが使用されてサーバーへのアクセスが許可されるようにファイアーウォールが構成されていることを確認してください。MobileTogether Server で使用されるポートは、 MobileTogether Server の Web UI の設定ページで指定することができます。(MobileTogether Server ユーザーマニュアルを参照してください)。クライアントデバイスでは、これはアクセスするサーバーポートとして指定されている必要があります。

 

ヒント: ポート 80 はデフォルトで通常ほとんどのファイアーウォールに対して開かれています。ですから、ファイアーウォールの設定で問題があり、ポート 80 が他のサービスにバインドされていない場合、ポート 80 をクライアントとの通信用の MobileTogether Server ポートとして指定することができます。

 

 


(C) 2019 Altova GmbH