首页 > 解决方案 > 如何使用 jmeter 阅读最新电子邮件的正文内容?

问题描述

我正在尝试阅读第一封电子邮件的正文内容以从语句“This is 1234 hello”中提取动态值“1234”

我正在使用电子邮件阅读器采样器,配置为:要检索的消息数:1

但在听众中,我看到它显示页面上最后一封电子邮件的正文。

请帮忙。此外,我想使用时间戳来识别相同的内容。

标签: datetimeemailjmeter

解决方案


从JMeter 5.2.1开始,使用 JMeter 的邮件阅读器采样器,您有 2 个选项:

  1. 检索消息
  2. 检索最后 N 条消息

如果您想阅读收件箱中的第一条消息(最旧的消息),则必须使用以下方法进行自己的实施:

通过IMAP从Gmail读取第一条消息的示例代码类似于:

props.setProperty('mail.transport.protocol', 'imaps')
props.setProperty('mail.imap.host', 'imap.gmail.com')
props.setProperty('mail.imap.port', '995')
props.setProperty('mail.imap.ssl.enable', 'true');

def session = javax.mail.Session.getDefaultInstance(props, null)
store = session.getStore('imaps')
store.connect('imap.gmail.com', 'your_username@gmail.com', 'your_password')
inbox = store.getFolder('INBOX')
inbox.open(javax.mail.Folder.READ_ONLY)
def message = inbox.getMessage(1)
return message.getContent()

推荐阅读