邮件协议(SMTP)性能测试总结(Foxmail邮箱)

先介绍一下邮件协议SMTP的工作机制(连接和发送过程),用wireshark工具抓包进行分析,如下:

SMTP协议的工作机制(连接和发送过程):

1.建立TCP连接,并将邮件服务器地址给客户端;

2.客户端发送EHLO命令以标识发件人自己的身份,然后客户端登录邮件服务器;

3.客户端先标示电子邮件的发件人发送MAIL命令,服务器端以OK作为响应,表明准备接收;

4.客户端发送RCPT 命令,以标识该电子邮件的计划接收人,可以有多个RCPT行, 服务器端以OK作为响应,表示愿意为收件人接收邮件;

5.客户端用命令DATA发送数据;

6.以.表示结束输入内容一起发送出去,服务器端并以OK作为响应;

7.客户端结束发送,用QUIT命令退出,服务器端以Bye作为响应,表示结束;

 

了解了邮件协议SMTP的工作机制后,下面开始进行性能测试:

一、先安装好邮件客户端FoxMail,被配置好邮件服务器等信息;

二、使用LoadRunner录制脚本

三、生成脚本,并优化脚本

Tasks目录:

接收邮件脚本:

发送邮件脚本:

脚本分析:

1)整体上的分析,接收邮件操作和发送邮件操作在Tasks目录分别生成一对.dat文件,打开.dat文件可以查看到附件的信息(附件类型、内容等);

2)接收邮件和发送邮件的脚本函数是一样的,邮件协议的工作过程是:登录到邮件服务器à发送消息à退出邮件服务器à释放邮件服务器;

3)脚本优化(参数化)

四、执行测试

1)在Contorller场景压力过程中,出现大量的报错,如图1:

查看日志,是由于用户多登陆时,session连接数已经满了,邮件服务器不允许重复登录。当连接数满的时候,需要清理一下。

2)在Contorller场景过程中,出现大量的报错,如图2,3:

这是由于邮件处理的原理是以队列的形式发送的,当多用户并发时,队列阻塞,发送请求和服务响应会出现大量报错信息,场景运行到12分30秒时响应时间没了,此时所有的用户已经处理完成。

3)启动LR录制时,工具先会判断邮件服务器和客户端之间的连接,是否有未接收的邮件显示(因邮件客户端设置不是时时接收邮件),录制日志如图4:

 

附录:

附录:

SMTP常用的响应

501——参数格式错误

502——命令不可实现

503——错误的命令序列

504——命令参数不可实现

211——系统状态或系统帮助响应

214——帮助信息

220<domain>——服务器就绪

221<domain>——服务关闭

421<domain>——服务器未就绪,关闭传输信道

250——要求的邮件操作完成

251——用户非本地,将转发向<forward-path>

450——要求的邮件操作未完成,邮箱不可用

550——要求的邮件操作未完成,邮箱不可用

451——放弃要求的操作,处理过程中出错

551——用户非本地,请尝试<forward-path>

452——系统存储不足,要求的操作未执行

552——过量的存储分配,要求的操作未执行

553——邮箱名不可用,要求的操作未执行

354——开始邮件输入,以“.”结束

554——操作失败

函数

使用SMTP函数

函数名

描述

smtp_logon[_ex]

登录到SMTP服务器

smtp_translate[_ex]

转换SMTP消息

smtp_send_mail[_ex]

发送SMTP消息

smtp_free[_ex]

释放SMTP服务器,使其不处理命令

smtp_logout[_ex]

从SMTP服务器注销

 

 

使用POP3函数

每个POP3函数都以pop3前缀开头

函数名

描述

pop3_logon[_ex]

登录到POP3服务器

pop3_command[_ex]

想POP3服务器发送命令

pop3_retrieve[_ex]

检索POP3服务器上的邮件

pop3_list[_ex]

列出POP3服务器上的邮件

pop3_delete[_ex]

删除服务器上的邮件

pop3_free[_ex]

释放POP3服务器,使其不处理命令

pop3_logoff[_ex]

从POP3服务器注销

 

转载于:https://www.cnblogs.com/luihengk/p/6102095.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SMTP(Simple Mail Transfer Protocol)是用于发送电子邮件协议SMTP邮箱连接测试工具是用于测试SMTP服务器是否能够正常连接和发送邮件的工具。 SMTP邮箱连接测试工具主要具有以下功能: 1. 连接测试SMTP邮箱连接测试工具可以模拟客户端连接到SMTP服务器,并进行连接测试。通过发送握手命令和接收服务器返回的响应,检查服务器是否能够正常响应连接请求。 2. 身份验证测试SMTP服务器通常需要用户进行身份验证才能发送邮件SMTP邮箱连接测试工具可以模拟用户登录,并进行身份验证测试。通过发送用户名和密码进行登录,检查服务器是否能够正确验证用户身份。 3. 邮件发送测试SMTP邮箱连接测试工具可以模拟发送邮件的过程,并进行邮件发送测试。用户可以输入邮件的发送者、接收者、主题和正文等信息,工具会将这些信息封装成邮件格式,并通过连接到SMTP服务器将邮件发送出去。用户可以查看发送过程中的日志,以便排查发送失败的原因。 4. 异常处理:SMTP邮箱连接测试工具会根据服务器返回的响应信息进行异常处理。例如,如果连接失败或者身份验证失败,工具会给出相应的错误提示,帮助用户找出问题所在。 通过使用SMTP邮箱连接测试工具,管理员和开发人员可以检查SMTP服务器的连接和发送功能是否正常。它可以帮助发现连接问题、身份验证问题以及服务器响应异常等,提高邮件系统的稳定性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值