最初のスクリプトの作成
スクリプトの作成
カスタムスクリプトを使用して合成ジョブを作成する前に、Python WebDriver スクリプトを作成し、ローカルで機能するようにする必要があります。スクリプトの概要については、Splunk AppDynamics では Selenium Python バインディングのマニュアルを参照することをお勧めしています。
合成ジョブでスクリプトを実行する前に、変更が必要になる可能性があるため、Splunk AppDynamics では Python スクリプトと合成スクリプトの違いを確認することをお勧めしています。
スクリプトを作成するためのツール
完全な機能を備えたスクリプトレコーダの場合は、Firefox アドオン Katalon Recorder(Firefox 55 以降の Selenium IDE)を使用します。生成されたスクリプトはブラウザ合成で動作しますが、ほとんどの自動生成コードと同様に、手動で変更して改善する必要があります。
スクリプト作成の制約
driver.get は、常にリソースではなく、適切な HTML ページを指している必要があります。
driver.get()は、HTML ページに適しています。- リソースを直接取得しようとすると、セッションデータの一部が不完全または誤っている可能性があります。
ローカルでのスクリプトのテスト
スクリプトをローカルでテストすることは、ユーティリティを利用してスクリプトを作成し、ローカルで実行するための最適な方法の 1 つです。スクリプトをローカルで実行するには、Selenium Python バインディングのマニュアルに記載されているインストール手順を実行し、スクリプトを Python スクリプトと同様に実行します。
Python と合成スクリプトの違いを理解する
合成スクリプトを作成する準備ができたら、ブラウザ合成で未変更の Python スクリプトを実行できるものの、いくつかの違いがあることに注意する必要があります。
- ジョブ作成 UI で選択されたブラウザで変数ドライバは自動的に作成されて初期化されるため、ドライバ初期化コードは削除できます。したがって、ドライバを初期化する次のコード例は、変数ドライバを返すロジックに置き換えられます。
# This initialization code or any initialization code # will be replaced with Synthetic Monitoring logic, and # the singleton `driver` will be available. from selenium import webdriver driver = webdriver.Firefox()注: スクリプトがドライバを初期化する場合、ドライバは維持しても問題ありません。合成は初期化されたドライバを無視するだけであり、代わりに自動的に作成されたドライバを返します。
- 合成セッション内で実行できるドライバは 1 つだけです。新しいドライバを作成しようとすると、自動的にインスタンス化されたドライバ(シングルトン)が返されます。
- 複数のウィンドウと対話するスクリプトが機能します。ただし、セッションの結果では、すべてのウィンドウの結果が 1 つのウォーターフォールにマージされます。
スクリプトを使用した合成ジョブの作成
スクリプトが完了してテストしたら、次の手順では、スクリプトを使用して合成ジョブを作成します。
- ダイアログで、 オプションボタンをオンにします。
- [Name] フィールドに [My First Script] と入力します。
- WebDriver スクリプトの例を確認します(変更しないでください)。
- [Choose Browsers] では、[Chrome] および [Firefox] を選択します。
- で、いくつかの異なる場所を追加します。
- [Save] をクリックします。
結果の表示
合成スクリプト内のすべての日付と時刻の関数は、UTC タイムゾーンの時間を返します。たとえば、サンフランシスコの場所から 7 月 30 日の午前 12 時(PST)にスクリプトがスケジュールされ、そのスクリプト内で次の関数が呼び出されるとします。
import datetime
.....
dt = datetime.datetime.now()
print(str(dt))
次の時間が返されます。
2020-07-30 07:00:00.000000
結果には 2 タイプのビューがあります。ジョブを作成する [Jobs] ページでは、合成ホステッド/プライベートエージェントの両方に対してジョブが実行された後にジョブと結果の概要を確認できます。
[Sessions] ページでは、さらに詳細な結果を確認することもできます。ジョブをダブルクリックするか、左側のナビゲーションバーの [Sessions] をクリックすることによってアクセスできます。
メトリックをチャートとして表示する場合は、[チャート(Charts)] タブをクリックします。
[レコード(Records)] タブでは、セッションをダブルクリックして [Session Details] ダイアログを表示できます。