0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[T-DASH] テスト自動化の中で、POP3を利用してメールの本文を取得する

Last updated at Posted at 2024-06-21

Outline

メールを受信して、そのメールのコンテンツからログインなどを行う、多要素認証MFAを使ったサイトがある。
このMFAを用いたサイトのテスト自動化では、メールの取得方法が重要になる。

前回、IMAPを用いてメールを取得する方法を記載した

今回、T-DASHテスト自動化でPOP3を用いてメールを取得する方法になる

POP3のテストサイト

POP3が使えるサイトとして5x2.deを用いた。
こちら、ドイツのサイトになりますが、IMAPを利用でき、無料です。

このメールサーバーではIMAPの情報は以下の通りです

パラメータ
POP3_SERVER mail.5x2.de
POP3_PORT 110, 995
MAIL_USER メールアドレス (ex. xxxx@5x2.me)

技術情報

MailClientLibrary を用いた
POP3のサーバー情報を設定し、いくつかの手段でメールを取得することができる。
今回、senderを指定して、最初に見つかったメールを取得するものとする。

T-DASH

カスタム動作

以下設定なようをメール処理POP3.yamlのファイルで保存する

ACT-CAT-CUSTOM-ad35bd43-0bc3-443e-ba74-3421ca00fa5e:
  action_category_name: MailPOP3
  icon: ''
  color: '#f96779'
  custom_data:
    file_name: MailPOP3
    pip_list:
    - robotframework-mailclient
    library_list:
    - MailClientLibrary
  actions:
    ACT-CUSTOM-6b11da19-93d6-4422-88ef-d079b0721824:
      action_name: POP3で最新のメールを取得する
      action_type: operation
      action_format: sender=「設定値1」のメールを取得
      action_note: ''
      action_args:
      - value1
      action_def:
      - - Set Test Variable
        - ${POP3_SERVER}
        - mail.5x2.de
      - - Set Test Variable
        - ${POP3_PORT_SSL}
        - '995'
      - - Set Test Variable
        - ${POP3_PORT}
        - '110'
      - - Set Test Variable
        - ${MAIL_USER}
        - xxx@example.com
      - - Set Test Variable
        - ${MAIL_PASSWORD}
        - xxxxx
      - - Set Pop3 Server Address
        - ${POP3_SERVER}
      - - Set Pop3 Ssl Port
        - ${POP3_PORT_SSL}
      - - Set Pop3 Port
        - '${POP3_PORT} '
      - - Set Pop3 Username And Password
        - ${MAIL_USER}
        - ${MAIL_PASSWORD}
      - - ${mail_count} =
        - Get Pop3 Mail Count
      - - Log
        - mail_count = ${mail_count}
      - - ${mail_content} =
        - Open Pop3 Mail By Sender
        - ${value1}
      - - Log
        - mail_content = ${mail_content}
      - - Set Suite Variable
        - ${share_value}
        - ${mail_content}

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

image.png

引数として、senderを指定することで、指定したsenderで最初に見つかったメールの、本文を変数${share_value}に格納します

スクリプト

TEXTメールを取得する

スクリプト

設定値1にsenderを指定します。

image.png

実行結果

件数と、みつかったメールの本文がログに出力され、かつ${share_value}に格納されます。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?