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

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

1.JPG

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

2.JPG

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

3.JPG

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

4.JPG

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

5.JPG

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

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

6.JPG

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

7.JPG

图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.JPG

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

9.JPG

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

10.JPG

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

11.JPG

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

12.JPG

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

13.JPG

图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",
         "[email protected]",
         "[email protected]",
         "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;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章