JMeter - 无法使用 SMTP 客户端发送带有 "Subject"、正文消息和附件的邮件

JMeter - Unable to send mail with "Subject", Body Messages & attachment using SMTP client

使用 groovy "SMTPClinet" 向 Outlook 服务器发送邮件的代码。但是电子邮件附件、消息和主题丢失了。

我们无法获得正确的 instances/function 附件、消息和主题。我们正在使用 "SMTPClient"。

这是实际的代码。

导入org.apache.commons.net.smtp.SMTPClient;

SMTPClient client = new SMTPClient();
//client.setPassiveLocalIPAddress("${IP}");
client.connect(xx.xx.xx.xx");
client.login();
client.setSender("emp1@estmail.net");
client.addRecipient("emp1@estmail.net");
mess = "this is test mail";
boolean success = client.sendShortMessageData(mess);
log.info("Success: " + success);
if (!success) {
  SampleResult.setSuccessful(false);
  SampleResult.setResponseMessage("Failed to connect client");
}
client.logout()
client.disconnect();
  1. 首先,永远不要在您的 Groovy 脚本中将变量作为 ${VAR} 引用,它会破坏 Compilable 界面的所有优点并显着降低您的脚本速度。使用 vars.get("IP") 代替
  2. 建议尽可能避免使用脚本,只有在别无选择的情况下才使用脚本。在您的情况下,JMeter 提供了 SMTP Sampler which could be used for all your test scenarios. See Load Testing Your Email Server: How to Send and Receive E-mails with JMeter 域综合信息指南
  3. 如果出于任何原因您仍然需要编写脚本,请考虑以下事项:

    • 使用SmtpSampler.java源代码供参考
    • 如果出现任何问题 - 查找故障排除的最佳位置是 jmeter.log 文件