51Testing丛书连载:(十)性能测试从零开始——LoadRunner入门

发表于:2008-6-27 15:42

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:柳胜    来源:51Testing软件测试网

8.2.2  对SMTP Vuser录制生成的脚本进行分析
        我们在Outlook上的一系列操作,包括登录和发送邮件,被VU转换成一系列函数,比如smtp_logon_ex和smtp_send_mail_ex等。下面我们对这些函数进行分析。
        (1)在lr_start_transaction(“sendMail”)语句之前未有其他语句。而在sendMail之前,实际上在Outlook之前已经完成了登录,并且在网络上有了67个事件交互。显然,SMTP Vuser对这些网络交互事件并不感兴趣,因为它们并没有转化成脚本。这只能说明一个事实:Outlook登录操作的底层走的网络协议并不是SMTP协议(实际上是IMAP协议)。
        (2)smtp_logon_ex是SMTP Vuser提供的一个函数,实现的是SMTP的登录认证。
        (3)smtp_send_mail_ex是SMTP Vuser的一个最主要的功能,其作用是将一封邮件发送到指定的E-mail地址。
 “From=test1@cesoo.com”是设置发件人地址。
 “To=test1@cesoo.com”是设置收件人地址。
 “Subject==?utf-8?B?6L+Z5piv5LiA5bCB5rWL6K+V6YKu5Lu25qCH6aKYdGVzdA==?=”是设置邮件的标题(subject)。
        从上一节的SMTP协议规范我们知道,SMTP网关一直保持7位ASCII码的“古老传统”,因此任何多字节的数据在经过SMTP协议之前必须要经过编码。在这里,“?utf-8?”说明Oultlook 2003用的是utf-8编码方式,而“6L+Z5piv5LiA5bCB5rWL6K+ V6YKu5Lu25qCH6aKYdGVzdA”则是 “这是一封测试邮件的标题”的编码后字节表现形式。
        (4)“AttachRawFile=mailnote1_01.dat”和“AttachRawFile=mailnote1_ 02.dat”,则是邮件正文的传送方式。检查录制后的脚本,发现左侧导航栏中多了“mailnote1_01.dat”和“mailnote1_02.dat”两个节点,如图8-14所示。
        点击打开mailnote1_01.dat,我们看到如下数据:
Content-Type: text/plain;
charset="utf-8"
Content-Transfer-Encoding: base64
6L+Z5piv5LiA5bCB5rWL6K+V6YKu5Lu255qE5q2j5paHdGVzdA0K

图8-14  SMTP虚拟用户脚本中的数据区
        这是对邮件正文的编码,同样的utf-8编码,“6L+Z5piv5LiA5bCB5rWL6K+ V6YKu5Lu255qE5q2j5paHdGVzdA0K”则是“这是一封测试邮件的正文”的utf编码后字节表现形式。
        点击打开mailnote1_02.dat,我们看到如下数据:
Content-Type: text/html;
charset="utf-8"
Content-Transfer-Encoding: quoted-printable
=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional //EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; charset= 3Dutf-8">
<META content=3D"MSHTML 6.00.2900.3157" name=3DGENERATOR></HEAD>
<BODY>
<DIV><FONT face=3D=E5=AE=8B=E4=BD=93 =
size=3D2>=E8=BF=99=E6=98=AF=E4=B8=80=E5=B0=81=E6=B5=8B=E8=AF=95=E9=82=AE=E4=
=BB=B6=E7=9A=84=E6=AD=A3=E6=96=87test</FONT></DIV></BODY></HTML>
        这些看起来都不是很陌生,和网页的DOM源码非常相像。没错,因为Outlook发送邮件的格式默认是html的,所以其实邮件正文里暗含了html的格式数据。

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号