您的位置:首页 > 其它

(九)性能测试从零开始——LoadRunner入门

2008-07-26 18:24 495 查看
8.2 VU的SMTP Vuser对SMTP协议的封装及实现
上面我们分析了SMTP/POP3/IMAP各自的协议原理及相应实现原语,下面我们通过对比SMTP协议原语与VU录制发送邮件操作而产生的脚本函数,来看一下VU是如何对SMTP协议进行封装的。在录制之前,需保证本机已经安装邮件客户端,本例中采用Outlook 2003,并且已经配置好指向相应的邮件服务器。
配置步骤如下:
在控制面板中,双击“邮件”图标,弹出如图8-1所示的对话框。



图8-1 邮件配置文件列表
单击“添加”按钮,输入一个配置文件名,比如“cesooMail”,然后单击“确定”按钮,弹出如图8-2所示的对话框。



图8-2 邮件配置向导第一步
保持图中的默认选项不变,单击“下一步”按钮,进入邮件配置向导第二步,如图8-3所示。
勾选“IMAP”类型,单击“下一步”按钮,进入邮件账户配置信息对话框,在对话框里输入相应的账号和SMTP/IMAP服务器信息,注意这里的账号和邮件服务器信息应该与你实际环境信息保持一致。在本例中,我们的IMAP服务器和SMTP服务器同为cesoo.com,IMAP端口号是默认的143,SMTP端口号是默认的25,账号用户名为test1,如图8-4所示。



图8-3 邮件配置向导第二步



图8-4 邮件配置详细信息
确认输入信息完整后,单击“下一步”按钮,弹出提示成功信息对话框,Outlook 2003的IMAP和SMTP配置完成,如图8-5所示。
配置文件成功创建后,我们就可以收发邮件了。而VU则能把这个过程全部捕捉下来,生成脚本。



图8-5 邮件配置成功页面

8.2.1 使用SMTP Vuser录制Outlook 2003发送邮件
打开VU,在“File”菜单下,选择“New”,在Vuser类型列表中,选中“Simple Mail Protocol(SMTP)”,如图8-6所示。



图8-6 在虚拟用户列表中选择SMTP Vuser
单击“Record”按钮,会弹出如图8-7所示的录制选项设置对话框。



图8-7 在录制选项中设置Outlook应用程序路径
“Application type”(应用程序类型)选择“Win32 Applications”,在“Program to record”(录制程序)选项中输入Outlook 2003的应用程序路径,在本例中为“C:/Program Files/microsoft office/OFFICE11/OUTLOOK.EXE”,单击“OK”按钮,开始录制。
录制开始后,VU会找到应用程序路径,并启动Outlook 2003。其主界面如图8-8所示。



图8-8 Outlook启动成功后的主页面
这时VU录制工具条有如下提示,如图8-9所示。



图8-9 Outlook登录引起网络67次交互事件
这说明Outlook 2003完成登录这个操作,在网络上已经有了67次交互。
下面我们要重点观察发送邮件的操作,因此要在这里定义一个Transaction(事务),用来度量发邮件的操作。
单击工具条上的Transaction开始点,定义一个名为“sendMail”的Transaction,如图8-10所示。



图8-10 设置发送邮件的事务开始点
回到Outlook 2003,继续操作。单击“新建”按钮,会弹出新邮件的窗口,在收件人、邮件标题、邮件正文中填写信息,如图8-11所示。



图8-11 在Outlook中构建一封新邮件
单击“发送”按钮,邮件被发送。这时我们再观察VU录制工具条,发现如图8-12所示的提示。



图8-12 Outlook发送邮件引发的网络交互事件
交互事件已经由之前的67次增长到91次,这说明发送邮件的操作在网络上产生了9167=24次交互。
单击工具条上结束Transaction的按钮,自动提示“sendMail”,直接单击“OK”按钮,如图8-13所示。



图8-13 设置发送邮件事务的结束点
停止VU录制,VU生成脚本如下:
Action()
{
lr_start_transaction("sendMail");
smtp1 = 0;
smtp_logon_ex(&smtp1, "SmtpLogon",
"URL=smtp://www.cesoo.com",
"CommonName=LoadRunner User",
LAST);

smtp_send_mail_ex(&smtp1, "SendMail",
"To=test1@cesoo.com",
"From=test1@cesoo.com",
"Subject==?utf-8?B?6L+Z5piv5LiA5bCB5rWL6K+V6YKu5Lu25qCH6 aKYdGVzdA==?=",
"ContentType=multipart/alternative;",
MAILOPTIONS,
"X-Mailer: Microsoft Office Outlook, Build 11.0.5510",
"Thread-Index: AciOgCIrErOOfaSTRUulBNIY7vEV0Q==",
"X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3028",
MAILDATA,
"AttachRawFile=mailnote1_01.dat",
"AttachRawFile=mailnote1_02.dat",
LAST);

smtp_logout_ex(&smtp1);
smtp_free_ex(&smtp1);
lr_end_transaction("sendMail",LR_AUTO);

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: