TestComplete - 技術情報

 

技術情報の目次ページに戻る

特定の条件を満たした場合にスクリプトを実行する

(2020.6.1 : 内容更新)

■ 機能の概要

Event Handlers を設定することで、エラーが発生した場合など、特定の条件が満たされた場合に指定したスクリプトを呼び出すことが可能です。

 

■ 設定方法

このチュートリアルでは、Event Handlers の設定手順とスクリプトの例を解説します。

  1. TestComplete で Project を開き、Project Explorer にて Project を右クリックし、コンテキストメニューから、[Add] - [New Item...] を選択します。

    表示された [Create Project Item] ダイアログボックスの Item types から "Events" を選択します。

  2. Project Explorer に Events が追加されるので、Events を右クリックし [Add] - [New Item...] を実行して Event control を追加します。

  3. 追加した EventControl で、左側の Available Events からスクリプトを呼び出す条件を選択します。ここでは General Events の OnLogError を右のパネルに追加し、右端の New ボタンをクリックして表示されたダイアログにて任意のスクリプトテストのファイルを選択します。これはエラーが発生した際に反応して実行されます。

  4. GeneralEvents_OnLogError メソッドが作成されたスクリプトテストが開かれますので、実行したいスクリプトを記述して保存します。

    下記は、一例になります。

    //Jscript, JavaScript

    //チェックポイント以外のエラーが発生した場合にテストを終了させるスクリプト
    //ログに出力されるメッセージに文字列 ”checkpoint” が含まれていない場合テストを終了させています
    //Project の Property にて Stop on error を無効にする必要があります
    function GeneralEvents_OnLogError(Sender, LogParams)
    {
      if(aqString.Find(LogParams.Str, "checkpoint") == -1){
        Runner.Stop(true); //Runner.Halt(); でも可
      }
    }

    //エラー発生時にメールで通知を行うスクリプト
    function GeneralEvents_OnLogError(Sender, LogParams)
    {
      if (SendMail("宛先アドレス", "送信元サーバー名", "送信者名", "送信元アドレス", "件名", "本文", "C:\\File1.txt", "C:\\File2.txt"))
        Log.Message("Mail was sent");
      else
        Log.Warning("Mail was not sent");
    }

    //エラー発生時点でのログを圧縮してローカルに保存するスクリプト
    function GeneralEvents_OnLogError(Sender, LogParams)
    {
      var WorkDir, FileName, FileList, ArchivePath;
      WorkDir = Project.ConfigPath + "Log\\ExportedResults\\";
      FileName = WorkDir + "Log.mht";
      Log.SaveResultsAs(FileName, 2);
      FileList = slPacker.GetFileListFromFolder(WorkDir);
      ArchivePath = WorkDir + "CompressedResults";
      if (slPacker.Pack(FileList, WorkDir, ArchivePath))
        Log.Message("Files compressed successfully.");
    }

設定は以上です。

 

その他 Event Handlers の詳細はヘルプからご確認いただけます。
https://support.smartbear.com/testcomplete/docs/testing-with/advanced/handling-events/about.html

※ Google Chrome で開き、右クリックのコンテキストメニューの「日本語に翻訳(T)」 機能をご使用いただくと、機械翻訳された内容でご覧いただけます。

 

ページトップへ