編寫本文的背景
隨著智能電話使用率的增長,越來越多的基於 Web 的應用程序開始提供從移動客 戶端訪問的能力,無論該客戶端是浏覽器還是原生應用程序。在這兩種情況下,這些客戶端都可以使用 HTTP 作為網絡協議,在理論上,可以使用主要的負載測試工具對它們進行測試。但另一方面,目前的大多數可用產 品(包括 IBM Rational Performance Tester)都沒有內置的功能來錄制對移動客戶端應用程序的測試。
本文將介紹如何使用 Android 模擬器,設置一個簡單框架,在 Rational Performance Tester 中錄 制一個 Android 應用程序的 HTTP 測試。
設置 Android 模擬器
Android.com 的 Developers 一節提供了安裝軟件開發工具包 (SDK) 的詳細安裝步驟。請參見本文的 參 考資料 一節,獲取相關鏈接。
安裝必要的組件
您至少需要安裝以下組件:
Android SDK
想要的 Android 平台(至少需要一個平台)
SDK 平台工具(安裝最新的版本)
您可能希望下載和安裝 Eclipse 插件,但這僅用於開發用途。另外,請確保您的工作站上擁有 Java 開發 工具包 (JDK) 的一個更新版本。單單 Java 運行時環境 (JRE) 並不夠用。
創建一個虛擬設備
安裝這些組件後,您需要創建一個虛擬設備。可使用 Android Virtual Device Manager (AVD Manager) 中的 向導通過以下步驟實現此目的:
在 Android SDK 中,打開一個終端,導航到 Tools 目錄,然後執行: android
在 Virtual devices 選項卡中,選擇 New。
圖 1. 創建一個新的虛擬設備
填入 AVD 的以下詳細信息:
Name:虛擬設備的名稱
Target:目標 Android 平台
SD Card:如果您的測試不需要 SD 卡,可將 Size 保留為空。否則,指定需要的大小。
Hardware:最好為虛擬設備分配至少 1 GB 內存。添加一個新 Property (Device RAM Size),將它的值 設置為 1024。
圖 2. AVD 詳細信息
安裝一個原生應用程序
如果 需要錄制來自某個原生 Android 應用程序的 Rational Performance Tester 測試,則需要執行以下步驟(如 果僅使用 Android 浏覽器,可跳過它們):
在安裝原生應用程序之前啟動虛擬設備。可直接從 AVD Manager 啟動它 (Start) 或在 Tools 文件夾下運 行以下命令(將斜體的問題替換為您的信息):
emulator -avd virtual_device_name
在 Platform-tools 文件夾下運行以下命令,以便安裝原生應用程序:
adb install 您的原生應用程序名稱.apk
如果需要使用文件來執行測試(例如,如果希望從移動設備上傳文件到目標應用程序),那麼需要將它們 推送到虛擬設備中。從正在運行的虛擬設備的 Platform-tools 文件夾運行以下命令:
push 您的文件名
/sdcard/設備上的文件名
也可以使用 Eclipse 將文件推送到虛擬設備中。
在 Rational Performance Tester 中錄制測試
應用程序安裝在移動虛擬設備上後,您需要更改模擬器中的代理設置,以便通過嵌入式的 Rational Performance Tester HTTP 錄制代理處理該應用程序發送的 HTTP 請求。
更改錄制的代理設置
要更改代理設置,請在移動虛擬設備中選擇 Settings > Wireless & Networks > More > Mobile Networks > Access Point Names > TelKila (internet),然後編輯以下屬性:
Proxy:您機器的 IP 地址。使用絕對 IP 地址。不要使用 127.0.0.1、localhost 或主機名,因為與 Rational Performance Tester 代理的連接似乎不支持這些值。
Port:對於 Rational Performance Tester 代理端口,默認設置為 1080。
Username:將此值保留為空(不設置)。
Password:將此值保留為空(不設置)。
Server:這應該與代理相同。
保留其他所有屬性的默認值。
圖 3. 移動虛擬設備中的代理設置
錄制和生成腳本
配置移動設備後,即可開始啟動 Rational Performance Tester 中的錄制。
啟動錄制器,然後在 Test Nature 下選擇 HTTP Test。
圖 4. 啟動 Rational Performance Tester 錄制器
選擇 Unmanaged Application 作為客戶端應用程序。
圖 5. 選擇客戶端應用程序
定義代理錄制器設置。保留默認代理端口,除非需要指定一個不同的值。
單擊 Finish。
圖 6. 代理錄制器設置
當錄制器啟動時,您可啟動您的移動應用程序並錄制 Rational Performance Tester 腳本。
如果正確執行了所有步驟,就會隨著您的運行看到自移動客戶端的 HTTP 請求,Recorder Control 選項 卡中的 KBytes 計數器值會不斷增加(參見圖 7)。
提示:
一種不錯的做法是為那些在錄制期間與 移動應用程序進行的每次交互添加注釋,以便以後可以識別各種事務。
圖 7. 包含 KBytes 計數器的 Recorder Control 選項卡
手動完成您希望錄制的來自移動客戶端的所有事務後,可以單擊 Recorder Control 選項卡上的 Stop 按鈕來停止錄制器。
測試是自動生成的,您可自定義並重放它。