性能測試從零開始——LoadRunner入門(八)[1] 性能測試工具
第8章 欲善其事先利其器——VU腳本開發實戰
VU開發腳本是我們使用LoadRunner做性能測試中一個重要的步驟,這里涉及軟件系統架構、計算機編程技巧和VU本身的功能特性。在本章,我們將結合郵件系統,介紹如何使用VU生成基于SMTP/IMAP協議的腳本。
我們將按照如下的思路完成腳本。
熟悉SMTP/POP3/IMAP協議規范和原語。
使用VU錄制郵件收發操作,分析VU腳本對標準SMTP/IMAP協議的封裝與實現機理。
使用VU Java模板用戶嵌入Java message接口,實現郵件收發,并以此介紹VU Java模板用戶的使用方法,以及Java classpath等相關設置。
8.1 郵件服務SMTP/IMAP協議介紹
電子郵件是我們日常工作中經常使用到的一種交流方式,它是Internet應用最廣的一種服務。
8.1.1 電子郵件的工作原理 軟件測試
電子郵件是Internet上最為流行的應用之一。如同郵遞員分發投遞傳統郵件一樣,電子郵件也是異步的,也就是說,人們是在方便的時候發送和閱讀郵件的,無須預先與別人協同。與傳統郵件不同的是,電子郵件既迅速,又易于分發,而且成本低廉。另外,現代的電子郵件消息可以包含超鏈接、HTML格式文本、圖像、聲音甚至視頻數據。
電子郵件的工作過程遵循客戶-服務器模式。每份電子郵件的發送都要涉及發送方與接收方,發送方構成客戶端,而接收方構成服務器,服務器含有眾多用戶的電子信箱。發送方通過郵件客戶程序,將編輯好的電子郵件向郵件服務器(SMTP服務器)發送。郵件服務器識別接收者的地址,并向管理該地址的郵件服務器(IMAP或POP3服務器)發送消息。郵件服務器將消息存放在接收者的電子信箱內,并告知接收者有新郵件到來。接收者通過郵件客戶程序連接到服務器后,就會看到服務器的通知,進而打開自己的電子信箱來查收郵件。
8.1.2 SMTP協議介紹
簡單郵件傳送協議(SMTP)是Internet電子郵件系統首要的應用層協議。它使用由TCP提供的可靠的數據傳輸服務把郵件消息從發信人的郵件服務器傳送到收信人的郵件服務器。SMTP協議服務的默認端口是25。
SMTP協議與人們用于面對面交互的禮儀之間有許多相似之處。首先,運行在發送端郵件服務器主機上的SMTP客戶,發起建立一個到運行在接收端郵件服務器主機上的SMTP服務器端口號25之間的TCP連接。如果接收郵件服務器當前不在工作,SMTP客戶就等待一段時間后再嘗試建立該連接。這個連接建立之后,SMTP客戶和服務器先執行一些應用層握手操作。就像人們在轉手東西之前往往先自我介紹那樣,SMTP客戶和服務器也在傳送信息之前先自我介紹一下。在這個SMTP握手階段,SMTP客戶向服務器分別指出發信人和收信人的電子郵件地址。彼此自我介紹完畢之后,客戶發出郵件消息。SMTP可以指望由TCP提供的可靠數據傳輸服務把該消息無錯地傳送到服務器。如果客戶還有其他郵件消息需發送到同一個服務器,它就在同一個TCP連接上重復上述過程;否則,它就指示TCP關閉該連接。
讓我們看一個客戶(C)和服務器(S)交互的例子。前面標以“C:”的文本行是名為Mike的客戶端發送的請求,Mike想給Rose發送一封“I love you”的電子郵件情書,前面標以“S:”的是cesoo.com服務器的回應。以下傳輸內容在TCP連接建立之后馬上發生。
原文轉自:http://www.anti-gravitydesign.com