準備測試環(huán)境
當精心編寫好測試腳本滿懷信心的去運行測試計劃時,發(fā)現(xiàn)所有的測試腳本都 failed 掉了,原因可能是你的測試環(huán)境中并沒有完全準備好。下面給出了準備測試環(huán)境的詳細步驟:
1.環(huán)境變量設置:JMeter 運行在 JRE/JDK 之上,在所有開始之前要設置 JMeter 自動檢測的環(huán)境變量 JAVA_HOME=#JAVA INSTALL DIRECTORY#.
2.JMeter 安裝:本文下面下載欄提供了 Apache JMeter 下載地址,首先要取得新版本的 JMeter 測試工具,JMeter 新版本包含了構建和運行絕大部分測試類型的文件,包括 Web (HTTP/HTTPS), FTP, JDBC, LDAP, Java, 和 JUnit 等。
3.準備 jar 包:JMeter 雖然提供了對 SOAP Over HTTP 以及 SOAP Over JMS 測試的 Sampler,但是出于對 licence 的考慮它本身并沒有提供 JMS 需要使用的 jar 包。因此,在運行測試之前需要將這些包復制到 JMeter 的 lib 目錄下,下面列表對測試所需 jar 包作了詳細說明。
4.BeanShell 腳本處理:如果在測試用例中用到了 BeanShell 腳本,則需要將 BeanShell 包拷貝到 JMeter bin 目錄下。BeanShell 是一種兼容 Java 語言的輕量級腳本語言,JMeter 腳本中可能會經(jīng)常用它來做日志處理,正則表達式后處理(Post- Process)等。如果在測試用例中用到了 Mail Visualiser, Mail Reader 以及 Web Services (SOAP) sampler,則需要將 MAIL 包拷貝到 JMeter bin 目錄下。如果在測試用例中用到了 JMS 相關的 sampler,則需要將 JMS 包拷貝到 JMeter bin 目錄下。
下面的列表列出了不同的測試用例所需要的 jar 包,以及其下載地址:
bsh-2.0b4.jarhttp://www.beanshell.org/
mail.jar http://java.sun.com/products/javamail/index.jsp
jms.jarhttp://java.sun.com/products/jms/docs.html
調(diào)試腳本中非常有用的信息日志:jmeter.log 在腳本的調(diào)試和運行過程中,所以的日志信息都會記錄在 jmeter.log 中,因此你會在這個文件中找到比較有用的信息。
注意事項
如果 JMeter 在執(zhí)行測試腳本過程中應該修改 jmeter.bat 文件中的一些參數(shù),參數(shù)大小可以根據(jù)測試計劃合理確定:
HEAP=-Xms256m – Xmx1024m
NEW=-XX:NewSize=128m -XX:MaxNewSize=128m
TENURING=-XX:MaxTenuringThreshold=2
EVACUATION=-XX:MaxLiveObjectEvacuationRatio=20%
PERM=-XX:PermSize=64m -XX:MaxPermSize=64m
DEBUG=-verbose:gc -XX:+PrintTenuringDistribution
此外,在搭建測試環(huán)境時還需要更多注意的地方:
JMeter 使用兼容 JKD1.4 或者更高版本
JMeter 無法識別 zip 格式的包文件,所以需要的包文件均要求以 .jar 結尾
JMeter 會自動在 JMETER_HOME/lib 和 ext 目錄下尋找需要的類
對于使用 CSVDataSet, 那么不要勾選 "Memory Cache"否則數(shù)據(jù)無法迭代
使用 JMeter 連接 SOAP Over HTTP 服務
JMeter 提供了 Web Service (SOAP) sampler,用以調(diào)用基于 HTTP 的 Web 服務。下面詳細說明 SOAP Over HTTP 服務調(diào)用的各個屬性。
圖 2.SOAP Over HTTP 服務調(diào)用的各個屬性