0
0

[T-DASH] 手動操作をはさむ: reCAPTCHAをセミ自動化にしましょう

Last updated at Posted at 2024-09-18

Outline

image.png

テスト自動化でやっかいなシロモノ!

Robotframeworkなどで試してもうまくいかない!

image.png

テスト自動化でchallangingなものとして

  • CAPTCHA
  • reCAPTCHA
  • MFA

などである。

なんとかすれば、自動化できるかもしれないが、引き際も(すべての手動テストを自動化できない)肝心。

今回は、T-DASHでセミ自動化を実装する

技術的情報

robotframeworkにDialogsというライブラリがある

Execute Manual Step

自動化の処理を中断し、手動処理を介入可能にする。
その後、その手動操作の過程で、問題なければ"PASS"、問題があれば"FAIL"させ、テスト自動化のステップに戻すことができる。

image.png

Pause Execution

自動化の処理を中断し、手動処理を介入可能にする。
"Execute Manual Step"とは異なり、テスト自動化の中断を行うもので、手動操作の実行結果は反映されない。

image.png

T-DASHの手順

カスタム動作

以下設定内容を Dialogs.yamlのファイル名で保存する

ACT-CAT-CUSTOM-aa5c4bd0-9a0b-435d-8d2b-eabf3a8d7c79:
  action_category_name: Dialogs
  icon: ''
  color: '#60CB85'
  custom_data:
    file_name: Dialogs
    pip_list: []
    library_list:
    - Dialogs
  actions:
    ACT-CUSTOM-a15b9133-57e5-4a5a-aa4e-56fe99d8ee39:
      action_name: 手動操作を介入する
      action_type: operation
      action_format: 「設定値1」のメッセージ表示を出し、手動操作を行う
      action_note: ''
      action_args:
      - value1
      action_def:
      - - Execute Manual Step
        - ${value1}
    ACT-CUSTOM-e4aa3d86-3277-4e91-a2f9-a26d0d5d50ba:
      action_name: 一時停止する
      action_type: operation
      action_format: 「設定値1」のメッセージを表示し、一時停止する
      action_note: ''
      action_args:
      - value1
      action_def:
      - - Pause Execution
        - ${value1}

次に、作成された Dialogs.yamlをT-DASHの動作定義 -> カスタム動作 -> カスタム動作をインポート にてインポートする

2つの中断するカスタム動作があるため、状況に応じて使い分ける

image.png

image.png

スクリプト

テスト自動化を中断させたいところに、先ほどのカスタム動作を入れる。
また、中断させる目的・どんな手動操作をさせるかを引数にいれると、そのメッセージが出てくるため、実行者にとってkindlyになる。

image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0