お問い合わせ
資料請求

Webシナリオ監視に自動リトライ機能を追加

概要

Webシナリオ監視に自動リトライ機能を追加しました。自動リトライ機能とは、シナリオ実行で最初の open コマンドの実行に失敗した場合に限り、再度、シナリオ実行を試みる機能です。今回は、この自動リトライ機能を実装した目的や、実際の動作についてご紹介いたします。

自動リトライ機能の狙い

Webシナリオ監視は、Webブラウザを使ってWebアプリケーションのテストを行う Selenium(セレニウム)というツールを拡張して、SaaS形式で提供しているサービスです。
Seleniume によるテスト実行では、まれに、ブラウザの起動の失敗や、ブラウザ起動後の初期化処理に失敗することがわかっています。このブラウザの起動の失敗や初期化処理の失敗は Selenium の仕組み上、どうしても回避できない問題で、Webシナリオ監視においても同様な症状が発生していました。
この問題に対処するために自動リトライ機能を実装しました。

自動リトライ機能では、シナリオ中の最初の open コマンドの実行失敗をもってリトライします。open コマンドは指定したURLにアクセスするための Selenium のコマンドで、通常、テストコード(=シナリオ)で最初に実行されますので、このコマンドの失敗をブラウザの起動や初期化処理に失敗したことを検知する方法の代替としました。

自動リトライ機能の挙動

仕様

リトライ回数

リトライ回数はお客様ごとに状況をみて弊社にて調整いたします。リトライ回数のデフォルトは 0 (リトライ無し) です。

リトライのタイミング

失敗判定をした直後にリトライします。以下に掲載したログのスクリーンショットをご参考にしてください。

リトライの判断基準

Selenium コマンドの open に失敗した場合のみです。それ以外のコマンドでの失敗ではリトライは行われません。

失敗のアラート通知

リトライが行われた場合、リトライのきっかけとなった直前の失敗についてのアラート通知は行いません。

シナリオ実行画面での見え方

リトライが行われた場合は、シナリオ詳細画面の “ログ” と “実行履歴” を見るとわかります。

リトライが行われた場合の、”実行履歴” は以下のように表示されます。
以下は、10分間隔で実行しているシナリオのリトライの例です。
通常は、10分間隔で実行されていますが、13:36:13 の実行に失敗した後、直ちに、13:36:47 に再実行されているのがわかります。以降はまた、10分間隔の実行に戻っています。

また、13:36:13 の回のシナリオ詳細画面の上側の “ログ” を見ると、最初の 1 ステップの、open コマンドが timeout して終わっています。

この2点をあわせて見ることで、open = ページの読み込みに失敗してリトライがかかったことがわかります。

おわりに

シナリオ実行冒頭の open の実行に失敗するケースがお客様によっては頻発しており、大変ご迷惑をおかけいたしました。自動リトライ機能は、お客様からお寄せいただいた疑問やご不満がきっかけとなって実装した機能です。厳しいご指摘をいただきましたお客様には感謝しております。引き続き、ご意見、ご要望をお寄せいただければ幸いです。

Webシナリオ監視サービスの料金や導入フロー等は、Webシナリオ監視のサービス紹介ページに詳しく記載しています。どうぞお気軽にお問い合わせください。

ご相談・お問い合わせはこちらから

サービスについてのご相談、資料のご請求など、お気軽にお問い合わせください。

03-5946-8400 平日 10:00 - 18:00
page top