版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、JMETER中文手冊(cè)分享1.簡(jiǎn)介Apache JMeter是100%純java桌面應(yīng)用程序,被設(shè)計(jì)用來測(cè)試C/S結(jié)構(gòu)的軟件(例如 HYPERLINK /pages/viewpage.action?pageId=5522 o 第五章 創(chuàng)建一個(gè)Web測(cè)試計(jì)劃 web應(yīng)用程序)。它可以用來測(cè)試包括基于靜態(tài)和動(dòng)態(tài)資源程序的性能,例如靜態(tài)文件,Java Servlets,Java對(duì)象, HYPERLINK /pages/viewpage.action?pageId=5563 o 第七章 創(chuàng)建一個(gè)數(shù)據(jù)庫測(cè)試計(jì)劃 數(shù)據(jù)庫, HYPERLINK /pages/viewpage.action?pageId=55
2、32 o 第八章 創(chuàng)建一個(gè)FTP測(cè)試計(jì)劃 FTP服務(wù)器等等。JMeter可以用來在一個(gè)服務(wù)器、網(wǎng)絡(luò)或者對(duì)象上模擬重負(fù)載來測(cè)試它的強(qiáng)度或者分析在不同的負(fù)載類型下的全面性能。另外,JMeter能夠通過讓你們用 HYPERLINK /pages/viewpage.action?pageId=5548 l %E7%AC%AC%E5%9B%9B%E7%AB%A0%E6%B5%8B%E8%AF%95%E8%AE%A1%E5%88%92%E5%85%83%E4%BB%B6-4.5%E6%96%AD%E8%A8%80 斷言創(chuàng)建測(cè)試腳本來驗(yàn)證我們的應(yīng)用程序是否返回了我們期望的結(jié)果,從而幫助我們回歸測(cè)試我們的程序
3、。為了最大的靈活性,JMeter允許我們使用正則表達(dá)式創(chuàng)建斷言。1.1 歷史Apache軟件組織的Stefano Mazzocchi是JMeter的創(chuàng)始人。他編寫它起初是為了測(cè)試Apache JServ的性能(一個(gè)已經(jīng)被Apache Tomcat工程所替代的工程)。我們重新設(shè)計(jì)JMeter來增強(qiáng)用戶界面并增加功能測(cè)試的能力。1.2 未來我們希望看到作為開發(fā)者利用它的可插入架構(gòu)使JMeter的功能快速擴(kuò)展。未來發(fā)展的主要目標(biāo)是在沒有影響JMeter的負(fù)載測(cè)試能力的情況下盡可能使JMeter成為最實(shí)用的回歸測(cè)試工具。2.入門開始使用JMeter最容易的方法是首先 HYPERLINK /site/d
4、ownloads/index.html 下載最新版并且安裝它。這個(gè)版本包含所有你在構(gòu)建和運(yùn)行Web,F(xiàn)TP,JDBC,和JNDI等測(cè)試時(shí)使用需要的所有文件。如果你想執(zhí)行JDBC測(cè)試,你當(dāng)然需要從供應(yīng)商得到適當(dāng)?shù)腏DBC驅(qū)動(dòng)。JMeter沒有提供任何JDBC驅(qū)動(dòng)。你可能需要下載的其它軟件: HYPERLINK / BeanShell - BeanShell函數(shù)和測(cè)試元件需要 HYPERLINK /products/javabeans/glasgow/jaf.html Java Activation Framework - JavaMail需要 HYPERLINK /products/javama
5、il/index.jsp Java Mail - Mail可視化,Mail Reader 和 WebService(SOAP)取樣器需要 HYPERLINK /products/jms/docs.html JMS - JMS取樣器需要下一步, 開始使用JMeter并且參見用戶手冊(cè) HYPERLINK /pages/viewpage.action?pageId=5519 o 第三章 創(chuàng)建一個(gè)測(cè)試計(jì)劃 創(chuàng)建一個(gè)測(cè)試計(jì)劃一章使自己更加熟悉JMeter基礎(chǔ)(例如,添加和刪除元件)。最后, 參見如何構(gòu)建一個(gè)明確類型的測(cè)試用例的適合章節(jié)。例如,如果你對(duì)Web應(yīng)用測(cè)試感興趣,那就參見 HYPERLINK /
6、pages/viewpage.action?pageId=5522 o 第五章 創(chuàng)建一個(gè)Web測(cè)試計(jì)劃 創(chuàng)建一個(gè)Web測(cè)試計(jì)劃。其他具體的測(cè)試計(jì)劃章節(jié)是: HYPERLINK /pages/viewpage.action?pageId=5525 o 第六章 創(chuàng)建一個(gè)高級(jí)web測(cè)試計(jì)劃 高級(jí)Web測(cè)試計(jì)劃、 HYPERLINK /pages/viewpage.action?pageId=5563 o 第七章 創(chuàng)建一個(gè)數(shù)據(jù)庫測(cè)試計(jì)劃 JDBC、 HYPERLINK /pages/viewpage.action?pageId=5532 o 第八章 創(chuàng)建一個(gè)FTP測(cè)試計(jì)劃 FTP、 HYPERLINK
7、 /pages/viewpage.action?pageId=5637 o 第十一章 創(chuàng)建一個(gè)JMS點(diǎn)到點(diǎn)測(cè)試計(jì)劃 JMS 點(diǎn)到點(diǎn)、 HYPERLINK /pages/viewpage.action?pageId=5640 o 第十二章 創(chuàng)建一個(gè)JMS主題測(cè)試計(jì)劃 JMS 主題、 HYPERLINK /pages/viewpage.action?pageId=5564 o 第九章 創(chuàng)建一個(gè)LDAP測(cè)試計(jì)劃 LDAP2.1 需求JMeter 需要最小需求的運(yùn)行環(huán)境。2.1.1 Java版本JMeter需要一個(gè)完全適當(dāng)?shù)腏VM1.4或者更高因?yàn)镴Meter 僅使用Java標(biāo)準(zhǔn)API, 請(qǐng)不要把因?yàn)?/p>
8、JRE實(shí)現(xiàn)版本而無法運(yùn)行JMeter的bug報(bào)告提交。2.1.2 操作系統(tǒng)JMeter是100%純Java應(yīng)用程序并且能夠正確的在任何有適當(dāng)?shù)腏ava實(shí)現(xiàn)的操作系統(tǒng)上運(yùn)行。JMeter 在下列環(huán)境已經(jīng)被測(cè)試:Unix(Solaris, Linux, 等)、Windows (98, NT, 2000, xp)、OpenVMS Alpha 7.3+2.2 可選如果你計(jì)劃做JMeter開發(fā)或者想使用SUN的java標(biāo)準(zhǔn)擴(kuò)展包,你將需要下列更多的可選包。2.2.1 Java編譯器如果你想編譯JMeter源代碼或者開發(fā)JMeter插件,你將需要一個(gè)完整的適當(dāng)?shù)腏DK1.4或者更高。2.2.2 SAX X
9、ML解析器JMeter 使用 Apache的 HYPERLINK / Xerces XML解析器,你可以選擇告訴JMeter使用一個(gè)不同的XML解析器。這樣做,把第三方的解析器的類包包含在JMeter的 HYPERLINK /pages/viewpage.action?pageId=5506 l %E7%AC%AC%E4%BA%8C%E7%AB%A0%E5%85%A5%E9%97%A8-2.4.1JMeterClasspath classpath中, 并更新 HYPERLINK /pages/viewpage.action?pageId=5506 l %E7%AC%AC%E4%BA%8C%E7
10、%AB%A0%E5%85%A5%E9%97%A8-2.5%E9%85%8D%E7%BD%AEJMeter perties 文件里的解析器實(shí)現(xiàn)的全類名。2.2.3 Email支持JMeter有有限的Email能力。 它能夠發(fā)送基于測(cè)試結(jié)果的Email,并且支持POP/IMAP 取樣器。它現(xiàn)在不支持SMTP取樣。為了能夠支持Email, 需要添加Sun的JavaMail包和activation包到JMeter HYPERLINK /pages/viewpage.action?pageId=5506 l %E7%AC%AC%E4%BA%8C%E7%AB%A0%E5%85%A5%E9%97%A8-2.
11、4.1JMeterClasspath classpath 。2.2.4 SSL加密為了測(cè)試一個(gè)使用SSL加密(HPPS)的web服務(wù)器, JMeter 需要一個(gè)提供SSL實(shí)現(xiàn)(例如 Sun的Java Secure Sockets Extension - JSSE)。包含需要的加密包到JMeter的 HYPERLINK /pages/viewpage.action?pageId=5506 l %E7%AC%AC%E4%BA%8C%E7%AB%A0%E5%85%A5%E9%97%A8-2.4.1JMeterClasspath classpath。 同樣,通過注冊(cè)SSL提供者更新 HYPERLINK
12、 /pages/viewpage.action?pageId=5506 l %E7%AC%AC%E4%BA%8C%E7%AB%A0%E5%85%A5%E9%97%A8-2.5%E9%85%8D%E7%BD%AEJMeter perties文件。JMeter默認(rèn)協(xié)議等級(jí)TLS(傳輸層安全性)。這可以通過修改在erties或者perties文件中的tocol來改變。JMeter被配置接受所有的證書,不管是否信賴和合法時(shí)間等。這允許在測(cè)試服務(wù)器最大靈活性。如果服務(wù)器需要一個(gè)客戶端證書,這是可以提供的。為了更好的管理證書,也要有一個(gè)SSL管理器 。2.2.5 JDBC驅(qū)動(dòng)如果你需要JDBC測(cè)試,需要添
13、加廠商的JDBC驅(qū)動(dòng)到 HYPERLINK /pages/viewpage.action?pageId=5506 l %E7%AC%AC%E4%BA%8C%E7%AB%A0%E5%85%A5%E9%97%A8-2.4.1JMeterClasspath classpath。確認(rèn)文件是一個(gè)jar文件,而不是zip。2.2.6 Apache SOAPApache SOAP需要mail.jar和activation.jar.你需要下載并拷貝這兩個(gè)jar文件到你jmeter/lib 目錄.一旦文件放到那里,JMeter 會(huì)自動(dòng)找到它們。2.2.7 BeanShell為了運(yùn)行BeanShell函數(shù)或者任何
14、BeanShell測(cè)試元件(取樣器,定時(shí)器等),你需要從 HYPERLINK / /下載beanshell的jar文件并拷貝jar文件到j(luò)meter/lib目錄,JMeter會(huì)自動(dòng)找到它。2.2.8 ActiveMQ 3.0類庫詳細(xì)參見 HYPERLINK /initial-configuration.html /initial-configuration.html詳細(xì)參見 HYPERLINK /pages/viewpage.action?pageId=5506 l %E7%AC%AC%E4%BA%8C%E7%AB%A0%E5%85%A5%E9%97%A8-2.4.1JMeterClasspa
15、th JMeter Classpath 一章安裝附加的jar包2.3 安裝我們推薦大多數(shù)用戶運(yùn)行 HYPERLINK /site/downloads/index.html 最新版本。要安裝一個(gè)構(gòu)建版本,簡(jiǎn)單解壓zip/tar文件到你想安裝JMeter的目錄。保證一個(gè)JRE/JDK正確的安裝并且設(shè)置環(huán)境變量JAVA_HOME,其它不需要做什么了。安裝目錄接口應(yīng)該看到的像這樣一些東西(2.3.1版本):jakarta-jmeter-2.3.1 jakarta-jmeter-2.3.1/bin jakarta-jmeter-2.3.1/docs jakarta-jmeter-2.3.1/extras
16、 jakarta-jmeter-2.3.1/lib/ jakarta-jmeter-2.3.1/lib/ext jakarta-jmeter-2.3.1/lib/junit jakarta-jmeter-2.3.1/printable_docs如果你想的話你可以重命名父目錄(例如 jakarta-jmeter-2.3.1) ,但是不要改變?nèi)魏巫幽夸浢8改夸浡窂街胁荒馨魏慰崭?;如果包含,你運(yùn)行客戶端-服務(wù)器模式會(huì)有問題。2.4 運(yùn)行JMeter要運(yùn)行JMeter, 運(yùn)行jmeter.bat (for Windows)或者jmeter (for Unix) 文件。那些文件在bin目錄下。稍微
17、暫停后,JMeter GUI會(huì)顯示出來。在bin目錄你會(huì)發(fā)現(xiàn)有些附加腳本很有用。Windows腳本文件(CMD文件需要Win2K或者更新):jmeter.bat - 運(yùn)行JMeter(默認(rèn)在GUI模式)jmeter-n.cmd - 使用一個(gè)JMX文件運(yùn)行非GUI測(cè)試jmeter-n-r.cmd - 使用一個(gè)JMX文件遠(yuǎn)程運(yùn)行一個(gè)非GUI測(cè)試jmeter-t.cmd - 在GUI模式使用一個(gè)JMX文件jmeter-server.bat - 以服務(wù)器模式啟動(dòng)JMeter注意: LAST可以在jmeter-n.cmd, jmeter-t.cmd 和 jmeter-n-r.cmd中使用,意味著最后一次
18、測(cè)試會(huì)運(yùn)行.Unix腳本文件可以運(yùn)行在大多Linux/Unix系統(tǒng).jmeter - 運(yùn)行JMeter(默認(rèn)在GUI模式)jmeter-server - 以服務(wù)器模式啟動(dòng)JMeter2.4.1 JMeter ClasspathJMeter 自動(dòng)從下列目錄中的jar文件發(fā)現(xiàn)類。JMETER_HOME/lib - 用來放使用的jar文件JMETER_HOME/lib/ext - 用來放JMeter組件和擴(kuò)展如果你開發(fā)新的JMeter組件,你可以壓縮它們成jar包并拷貝到JMeter的/lib/ext目錄。JMeter將會(huì)自動(dòng)發(fā)現(xiàn)在這里的任何jar文件中的JMeter組件。支持的jar文件(類庫)應(yīng)
19、該放在lib目錄.如果你不想把擴(kuò)展jar包放到lib/ext目錄,可以在perties中定義search_paths屬性。不要使用lib/ext給那些公用的jar包;它僅僅是存放JMeter組件。其他jar包(例如JDBC, 和任何JMeter代碼需要支持的類庫)應(yīng)該被代替放在lib目錄 ,而不是lib/ext目錄。你可以在$JAVA_HOME/jre/lib/ext安裝有用的jar文件,或者(自從2.1.1版本)你可以在perties中設(shè)置user.classpath屬性。注意設(shè)置CLASSPATH環(huán)境變量將不起作用。這是因?yàn)镴Meter 使用java -jar啟動(dòng),并且java命令無記錄忽
20、略CLASSPATH變量,并且當(dāng)使用-jar選項(xiàng)時(shí)-classpath/-cp選項(xiàng)也被使用。2.4.2 使用代理服務(wù)器如果你從防火墻/代理服務(wù)器后測(cè)試,你需要提供給JMeter防火墻/代理服務(wù)器的主機(jī)名和端口號(hào)。這樣做,從命令行使用以下參數(shù)運(yùn)行jmeter.bat/jmeter文件: -H 代理服務(wù)器主機(jī)名或者ip地址-P 代理服務(wù)器端口-N 非代理主機(jī) (例如:*.|localhost)-u 代理證書用戶名- 如果需要-a 代理證書密碼 - 如果需要例如 : jmeter -H xy.server -P 8000 -u username -a password -N localhost或者,
21、 你使用 -proxyHost, -proxyPort, -username, and -passwordJMeter也有自己的內(nèi)建HTTP代理服務(wù)器,來記錄HTTP(不是 HTTPS)瀏覽器會(huì)話。這是和上面的代理設(shè)置描述不混淆的,它是在JMeter發(fā)出HTTP或者HTTPS請(qǐng)求時(shí)使用的。2.4.3 非用戶界面模式(命令行模式)為了不相互影響測(cè)試, 你可以選擇運(yùn)行沒有用戶界面的JMeter。這樣做,使用下列命令選項(xiàng):-n 這是指定JMeter在非用戶界面模式運(yùn)行-t 包含測(cè)試計(jì)劃的JMX文件的名字-l 記錄取樣結(jié)果的JTL文件的名字-r 運(yùn)行在perties文件里所有的遠(yuǎn)程服務(wù)器 (或者通過在
22、命令行覆蓋屬性指定遠(yuǎn)程服務(wù)器)這個(gè)腳本也允許我們指定可選的防火墻/代理服務(wù)器信息:-H 代理服務(wù)器主機(jī)名或者ip地址-P 代理服務(wù)器端口例如 : jmeter -n -t my_test.jmx -l log.jtl -H xy.server -P 80002.4.4 服務(wù)器模式為了分布測(cè)試,在服務(wù)器模式運(yùn)行JMeter,并且通過用戶界面控制每一臺(tái)服務(wù)器。jmeter-server/jmeter-server.bat 腳本使用適當(dāng)?shù)腸lasspath為你開始遠(yuǎn)程注冊(cè)。如果失敗,參見關(guān)于JMeter服務(wù)器啟動(dòng)細(xì)節(jié)。運(yùn)行jmeter-server/jmeter-server.bat,加上下列選項(xiàng)命
23、令:這個(gè)腳本也允許我們指定可選的防火墻/代理服務(wù)器信息:-H 代理服務(wù)器主機(jī)名或者ip地址-P 代理服務(wù)器端口例如 : jmeter-server -H xy.server -P 80002.4.5 通過命令行覆蓋屬性Java系統(tǒng)屬性,JMeter屬性,和日志屬性可以通過命令行直接覆蓋(代替更改perties文件)。這樣做,使用下列選項(xiàng):-Dprop_name=value - 定義一個(gè)java系統(tǒng)屬性值。-Jprop name=value - 覆蓋一個(gè)JMeter屬性。-Lcategory=priority - 覆蓋一個(gè)日志設(shè)置,設(shè)置一個(gè)特殊目錄為給定的優(yōu)先級(jí)。-L 標(biāo)志也可以使用沒有目錄名來
24、設(shè)置根目錄日志等級(jí)。例如 :jmeter -Duser.dir=/home/mstover/jmeter_stuff -Jremote_hosts= -Ljmeter.engine=DEBUGjmeter -LDEBUG注意:命令行參數(shù)在啟動(dòng)時(shí)較早被處理,但是在日志系統(tǒng)被設(shè)置以后。嘗試使用-J標(biāo)志更新log_level或者log_file屬性無效。2.4.6 日志和錯(cuò)誤信息如果JMeter發(fā)現(xiàn)一個(gè)錯(cuò)誤, 一個(gè)消息將被寫入日志文件。日志文件名在perties文件中定義。一般定義為jmeter.log 。并且在JMeter啟動(dòng)目錄,例如bin。當(dāng)在Windows下運(yùn)行時(shí),如果你
25、不設(shè)置Windows顯示文件擴(kuò)展名,文件名會(huì)僅顯示為 JMeter。還有記錄錯(cuò)誤,jmeter.log 文件記錄一些測(cè)試運(yùn)行信息。例如:10/17/2003 12:19:20 PM INFO - jmeter.JMeter: Version 1.9.2003100210/17/2003 12:19:45 PM INFO - jmeter.gui.action.Load:Loadingfile:c:mytestfilesBSH.jmx10/17/2003 12:19:52 PM INFO - jmeter.engine.StandardJMeterEngine: Running the test
26、!10/17/2003 12:19:52 PM INFO - jmeter.engine.StandardJMeterEngine: Starting 1 threads for group BSH. Ramp up = 1.10/17/2003 12:19:52 PM INFO - jmeter.engine.StandardJMeterEngine: Continue on error10/17/2003 12:19:52 PM INFO - jmeter.threads.JMeterThread: Thread BSH1-1 started10/17/2003 12:19:52 PM I
27、NFO - jmeter.threads.JMeterThread: Thread BSH1-1 is done10/17/2003 12:19:52 PM INFO - jmeter.engine.StandardJMeterEngine: Test has ended日志文件對(duì)發(fā)現(xiàn)錯(cuò)誤原因很有幫助,作為JMeter不會(huì)打斷一個(gè)測(cè)試來顯示一個(gè)錯(cuò)誤對(duì)話框。2.4.7 命令行選項(xiàng)目錄調(diào)用JMeter的jmeter -?命令將打印所有命令選項(xiàng)的一個(gè)列表。列表如下:-h,-help打印使用信息并退出-v, -version打印版本信息并推出-p, -propfile argument使用的JMete
28、r屬性文件-q, -addprop argument附加的屬性文件-t, -testfile argument運(yùn)行的JMeter測(cè)試文件(.jmx)-l, -logfile argument日志取樣文件-n, -nongui 非用戶界面運(yùn)行JMeter-s, -server 運(yùn)行JMeter服務(wù)器-H, -proxyHost argument設(shè)置JMeter使用的代理服務(wù)器-P, -proxyPort argument設(shè)置JMeter使用的代理服務(wù)器端口-u, -username argument設(shè)置JMeter使用的代理服務(wù)器用戶名-a, -password argument設(shè)置JMeter
29、使用的代理服務(wù)器密碼-J, -jmeterproperty argument=value定義附加的 JMeter 屬性-D, -systemproperty argument=value定義附加的 System 屬性-S, -systemPropertyFile filename一個(gè)屬性文件被做為系統(tǒng)屬性添加-L, -loglevel argument=value定義日志等級(jí): category=level例如 jorphan=INFO or jmeter.util=DEBUG-r, -runremote從非用戶界面模式啟動(dòng)遠(yuǎn)程服務(wù)器-d, -homedir argument 使用的JMete
30、r目錄2.5 配置JMeter如果你希望改變JMeter運(yùn)行時(shí)的屬性你需要改變?cè)?bin目錄下的perties文件,或者創(chuàng)建你自己的perties文件并且在命令行指定它。注意:自從2.1.2,你能夠通過JMeter屬性perties在文件中定義附加的JMeter屬性,perties默認(rèn)值是perties。如果在當(dāng)前目錄被發(fā)現(xiàn),這個(gè)文件被自動(dòng)加載。類似的,perties被用來更新系統(tǒng)屬性。參數(shù):屬性描述vider你可以為你的SSL實(shí)現(xiàn)指定類。如果你想使用來自sun的JSSE,是這樣:.ssl.Internal.ssl.Provider。JMeter默認(rèn)提供https支持。如果你正在使用JDK1.
31、4, 或者你使用帶JSSE類的jar文件在JMeter的classpath里的JDK1.4。 Cernal.ssl.ProviderJMeter默認(rèn)提供https支持是在你使用JDK1.4或者你使用把JSSE類的jar包放到JMeter classpath中的JDK1.3時(shí)候。 xml.parser你可以指明一個(gè)你的XML解析器實(shí)現(xiàn)。默認(rèn)值是:org.apache.xerces.parsers.SAXParser remote_hosts逗號(hào)分割遠(yuǎn)程JMeter主機(jī)列表。如果你在一個(gè)分布式環(huán)境運(yùn)行JMeter,列出你用JMeter遠(yuǎn)程主機(jī)運(yùn)行的機(jī)器。這允許你使用機(jī)器的用戶界面控制那些服務(wù)器。
32、not_in_menu在JMeter選項(xiàng)屏中你不想看到的組件列表。如果JMeter被添加越來越多的組件,你會(huì)希望定制JMeter只出現(xiàn)那些你感興趣的組件。你可以在這兒列出那些類名和他們的類標(biāo)簽(JMeter的用戶界面出現(xiàn)的字符串),它們將在選項(xiàng)屏中不出現(xiàn)。 search_paths列出那些JMeter搜索JMeter附加類的路徑(以;分割);例如附加的取樣器。被添加到lib/ext目錄的任何jar包都被發(fā)現(xiàn)。 user.classpathJMeter搜索的公用類庫的路徑列表。被添加到lib目錄的任何jar包都被發(fā)現(xiàn)。 perties附加的JMeter屬性文件名。 初始化屬性文件后它們被添加,但
33、是在-q和-J選項(xiàng)被處理之前。 perties附加的系統(tǒng)屬性文件名。 -S和-D選項(xiàng)被執(zhí)行前添加。 3. 創(chuàng)建一個(gè)測(cè)試計(jì)劃一個(gè)測(cè)試計(jì)劃描述了一系列Jmeter運(yùn)行時(shí)要執(zhí)行的步驟。一個(gè)完整的測(cè)試計(jì)劃包含一個(gè)或者多個(gè)線程組,邏輯控制器,取樣發(fā)生控制,監(jiān)聽器,定時(shí)器,斷言和配置元件。3.1 添加和刪除元件在一個(gè)樹上通過右擊可以添加元件到一個(gè)測(cè)試計(jì)劃 ,并且從添加列表中選擇一個(gè)新元件。另外,元件可以從文件加載并且通過選擇打開選項(xiàng)添加。為了刪除元件,確保元件被選中,正確在元件上右擊,并且選擇刪除選項(xiàng)。3.2 加載和保存元件為了從文件加載元件,右擊將要加載元件到的已經(jīng)存在的樹元件,并選擇打開選項(xiàng)。選擇你的
34、元件保存的文件。JMeter會(huì)加載元件到樹中。為了保存樹元件,在一個(gè)元件上右擊,選擇保存選項(xiàng)。JMeter會(huì)保存已選的元件,加上所有下面的子元件。用這種方法,你能夠保存測(cè)試樹的片段,單獨(dú)元件,或者整個(gè)測(cè)試計(jì)劃。3.3 配置樹元件在測(cè)試樹中的任何元件都在JMeter的右側(cè)框架顯示配置。那些配置允許你配置測(cè)試元件的細(xì)節(jié)行為,對(duì)于一個(gè)元件什么能被配置依賴于它是一個(gè)什么類型的元件。3.4 保存測(cè)試計(jì)劃雖然這不是必須的,我們推薦你在運(yùn)行前保存測(cè)試計(jì)劃。為了保存測(cè)試計(jì)劃,從文件菜單選擇保存測(cè)試計(jì)劃(使用最新版本,你不再需要首先選擇測(cè)試計(jì)劃元件)。JMeter允許你保存整個(gè)測(cè)試計(jì)劃樹或者僅它的一部分。為了僅
35、保存測(cè)試計(jì)劃樹中特殊支位置的元件,從從這個(gè)支開始的地方選擇樹中的測(cè)試計(jì)劃元件,然后右擊鼠標(biāo)訪問保存菜單項(xiàng)。另外選擇合適的測(cè)試計(jì)劃元件并從編輯菜單選擇保存。3.5 運(yùn)行一個(gè)測(cè)試計(jì)劃為了運(yùn)行一個(gè)測(cè)試計(jì)劃,從運(yùn)行菜單項(xiàng)選擇開始。為了停止你的測(cè)試計(jì)劃,從同樣的菜單選擇停止。JMeter不會(huì)自動(dòng)給它是否正在運(yùn)行任何顯示。如果JMeter運(yùn)行,一些監(jiān)聽器使它變明顯,但是唯一確定的方法是檢查運(yùn)行菜單。如果開始不可用,停止 可用,證明JMeter正在運(yùn)行你的測(cè)試計(jì)劃(或者至少它認(rèn)為它是)。有兩個(gè)類型的停止命令:停止(Control + .)- 立刻停止所有的線程關(guān)閉(Control + ,)- 請(qǐng)求所有線程在
36、當(dāng)前任務(wù)結(jié)束后停止3.6 元件作用域及執(zhí)行順序3.6.1 作用域規(guī)則JMeter中共有8類可被執(zhí)行的元件(測(cè)試計(jì)劃與線程組不屬于元件),這些元件中,取樣器是典型的不與其它元件發(fā)生交互作用的元件,邏輯控制器只對(duì)其子節(jié)點(diǎn)的取樣器有效,而其它元件(configelements、timers、post-processors、assertions、listeners、)需要與取樣器(sampler)等元件交互。配置元件(configelements):元件會(huì)影響其作用范圍內(nèi)的所有元件。前置處理程序(Per-processors):元件在其作用范圍內(nèi)的每一個(gè)sampler元件之前執(zhí)行。定時(shí)器(timers
37、):元件對(duì)其作用范圍內(nèi)的每一個(gè)sampler有效后置處理程序(Post-processors):元件在其作用范圍內(nèi)的每一個(gè)sampler元件之后執(zhí)行。斷言(Assertions):元件對(duì)其作用范圍內(nèi)的每一個(gè)sampler元件執(zhí)行后的結(jié)果執(zhí)行校驗(yàn)。監(jiān)聽器(Listeners):元件收集其作用范圍的每一個(gè)sampler元件的信息并呈現(xiàn)。在jmeter中,元件的作用域是靠測(cè)試計(jì)劃的的樹型結(jié)構(gòu)中元件的父子關(guān)系來確定的,作用域的原則是:取樣器(sampler)元件不和其它元件相互作用,因此不存在作用域的問題。邏輯控制器(LogicController)元件只對(duì)其子節(jié)點(diǎn)中的取樣器和邏輯控制器作用。除取樣器
38、和邏輯控制器元件外,其他6類元件,如果是某個(gè)sampler的子節(jié)點(diǎn),則該元件公對(duì)其父子節(jié)點(diǎn)起作用。除取樣器和邏輯控制器元件外的其他6類元件,如果其父節(jié)點(diǎn)不是sampler,則其作用域是該元件父節(jié)點(diǎn)下的其他所有后代節(jié)點(diǎn)(包括子節(jié)點(diǎn),子節(jié)點(diǎn)的子節(jié)點(diǎn)等)。3.6.2 元件的執(zhí)行順序了解了元件有作用域之后,來看看元件的執(zhí)行順序,元件執(zhí)行順序的規(guī)則很簡(jiǎn)單,在同一作用域名范圍內(nèi),測(cè)試計(jì)劃中的元件按照如下順序執(zhí)行。(1)配置元件(configelements)(2)前置處理程序(Per-processors)(3)定時(shí)器(timers)(4)取樣器(Sampler)(5)后置處理程序(Post-proces
39、sors)(除非Sampler得到的返回結(jié)果為空)。(6)斷言(Assertions)(除非Sampler得到的返回結(jié)果為空)。(7)監(jiān)聽器(Listeners)(除非Sampler得到的返回結(jié)果為空)。關(guān)于執(zhí)行順序,有三點(diǎn)需要注意:*前置處理器、后置處理器和斷言等元件只能對(duì)取樣器作用,因此如果在它們的作用域內(nèi)沒有任何取樣器,則不會(huì)被執(zhí)行。*如果在同一作用域范圍內(nèi)有多個(gè)同一類型的元件,則這些元件按照它們?cè)跍y(cè)試計(jì)劃中的上下順序依次執(zhí)行。* 一個(gè)斷言在測(cè)試樹中是分等級(jí)的。如果它的父元件是請(qǐng)求,它就被應(yīng)用于那個(gè)請(qǐng)求。如果它的父元件是控制器,它就影響所有那個(gè)控制器下的所有請(qǐng)求。請(qǐng)求的順序是 One,T
40、wo,Three,F(xiàn)our。一些控制器影響它的子元件的順序,你可以在組件參考讀到特定的控制器。Assertion #1僅被應(yīng)用于請(qǐng)求One,Assertion #2僅被應(yīng)用于請(qǐng)求Two和Three。在這個(gè)例子里,請(qǐng)求的命名表現(xiàn)它們被執(zhí)行的順序。Timer #1應(yīng)用于請(qǐng)求Two,Three,和Four(注意對(duì)于分等級(jí)的元件怎樣的順序是不相關(guān)的)。Assertion #1應(yīng)用于請(qǐng)求Three。Timer #2對(duì)所有請(qǐng)求有效。元件首部管理器,Cookie管理器和授權(quán)管理器的配置和默認(rèn)元件的配置被視為是不同的默認(rèn)元件配置的設(shè)置被并入取樣器可以到達(dá)的一組值里了。然而來自管理器的設(shè)置沒有并入。如果多于一個(gè)
41、管理器在一個(gè)取樣器范圍中,僅僅一個(gè)被使用,但是現(xiàn)在沒有辦法指定那個(gè)被使用。3.7 錯(cuò)誤報(bào)告JMeter把警告和錯(cuò)誤信息報(bào)告在jmeter.log文件中,也有一些測(cè)試運(yùn)行本身的信息.只是偶爾地,JMeter對(duì)于某些錯(cuò)誤是無法補(bǔ)捉和記錄的,這些信息會(huì)顯示在命令臺(tái)上。如果一個(gè)測(cè)試的執(zhí)行并不是你所期待的,請(qǐng)檢查日志,也許錯(cuò)誤會(huì)被報(bào)告(例如:也許在函數(shù)調(diào)用上有語法錯(cuò)誤)。取樣錯(cuò)誤(例如:HTTP 404 -找不到文件)是不會(huì)被正常的記錄在日志中的,取而代之的,他們會(huì)被當(dāng)作取樣結(jié)果的屬性來儲(chǔ)存,取樣結(jié)果的狀態(tài)能被許多不同的監(jiān)聽器所得到。4. 測(cè)試計(jì)劃元件測(cè)試計(jì)劃對(duì)象有一個(gè)叫做功能測(cè)試復(fù)選框。如果被選擇,它
42、會(huì)使JMeter記錄來自服務(wù)器返回的每個(gè)取樣的數(shù)據(jù)。如果你在測(cè)試監(jiān)聽器中選擇一個(gè)文 件,這個(gè)數(shù)據(jù)將被寫入文件。如果你嘗試一個(gè)較小的測(cè)試來保證JMeter配置正確并且你的服務(wù)器正在返回期望的結(jié)果,這是很有用的。這樣的后果就是這個(gè)文 件會(huì)快速的增大,并且JMeter的效率會(huì)影響。如果你不做壓力測(cè)試這個(gè)選項(xiàng)應(yīng)該關(guān)閉(默認(rèn)關(guān)閉)。如果你不記錄數(shù)據(jù)到文件,這個(gè)選項(xiàng)就沒有不同了。4.1 線程組線程組元件是任何測(cè)試計(jì)劃的起點(diǎn)。一個(gè)測(cè)試計(jì)劃的所有元件必須在一個(gè)線程組下。由名字可以看出,線程組元件控制JMeter運(yùn)行測(cè)試時(shí)使用的線程數(shù)。線程組管理允許你:設(shè)置線程數(shù)設(shè)置ramp-up period設(shè)置執(zhí)行測(cè)試的次
43、數(shù)每個(gè)線程會(huì)作為一個(gè)整體執(zhí)行測(cè)試計(jì)劃并完全獨(dú)立于他測(cè)試線程。多線程用來模擬到達(dá)服務(wù)器程序的同步連接。 Ramp-up period告訴JMeter多久開始ramp-up選擇的全部線程。如果使用10個(gè)線程,ramp-up period是100秒,那么JMeter用100秒使所有10個(gè)線程啟動(dòng)并運(yùn)行。每個(gè)線程會(huì)在上一個(gè)線程啟動(dòng)后10秒(100/10)啟動(dòng)。如果有30 個(gè)線程和一個(gè)120秒的ramp-up period,那么每個(gè)連續(xù)的線程會(huì)延遲4秒。Ramp-up需要要充足長(zhǎng)以避免在啟動(dòng)測(cè)試時(shí)有一個(gè)太大的工作負(fù)載,并且要充足小以至于最后一個(gè)線程在第一個(gè)完成前啟動(dòng)(除非你想那樣發(fā)生)。 使用ramp-
44、up=線程數(shù)啟動(dòng),并上下調(diào)整到所需的。默認(rèn),線程組被配置僅循環(huán)一次。 1.9版本引入了一個(gè)測(cè)試運(yùn)行*調(diào)度器*。 單擊在線程組面板底部的復(fù)選框來顯示額外的文本域,在里面你可以輸入啟動(dòng)和結(jié)束時(shí)間。當(dāng)測(cè)試啟動(dòng)時(shí),如果必須JMeter會(huì)等待啟動(dòng)時(shí)間到達(dá)。在每個(gè)周期 結(jié)束,JMeter檢驗(yàn)結(jié)束時(shí)間是否到達(dá),如果是,運(yùn)行停止,如果不是測(cè)試被允許繼續(xù),直到迭代限制到達(dá)。另外你可以使用啟動(dòng)延遲和持續(xù)時(shí)間文本域。注意啟動(dòng)延遲會(huì)覆蓋啟動(dòng)時(shí)間,持續(xù)時(shí)間會(huì)覆蓋結(jié)束時(shí)間。 4.2控制器JMeter有兩種控制器:取樣器和邏輯控制器。取樣器告訴JMeter發(fā)送請(qǐng)求到服務(wù)器。例如,如果你要JMeter發(fā)送一個(gè)HTTP請(qǐng)求添加
45、一個(gè)HTTP請(qǐng)求取樣器。你也可以通過添加一個(gè)或者多個(gè)配置元件到一個(gè)取樣器來定制一個(gè)請(qǐng)求。更多信息,見取樣器。邏輯控制器讓你定制當(dāng)發(fā)送請(qǐng)求時(shí)JMeter使用的判斷邏輯。例如,你可以添加交替控制器來在兩個(gè)HTTP請(qǐng)求取樣器之間交替 。更多信息,見邏輯控制器。4.2.1 取樣器(Sampler)取樣器告訴JMeter發(fā)送請(qǐng)求到服務(wù)器。JMeter取樣器包括:FTP 請(qǐng)求HTTP 請(qǐng)求JDBC 請(qǐng)求Java object 請(qǐng)求LDAP 請(qǐng)求SOAP/XML-RPC 請(qǐng)求WebService (SOAP) 請(qǐng)求每個(gè)取樣器有一些你可以設(shè)置的屬性。你可以通過添加一個(gè)或多個(gè)配置元件到取樣器來進(jìn)一步定制它。注意
46、JMeter發(fā)送請(qǐng)求按照取樣器出現(xiàn)在樹中的順序。 如果你想發(fā)送多個(gè)相同類型的請(qǐng)求(例如,HTTP Request)到相同的服務(wù)器,可以考慮使用一個(gè)默認(rèn)配置元件。每個(gè)控制器有一個(gè)或者多個(gè)默認(rèn)配置元件(見下)。 記得添加一個(gè)監(jiān)聽器到線程組來查看/保存你的請(qǐng)求結(jié)果到磁盤。如果你對(duì)使用JMeter平臺(tái)的基礎(chǔ)驗(yàn)證器到你的請(qǐng)求響應(yīng)感興趣,添加一個(gè)斷言到請(qǐng)求控制器。例如, 在壓力測(cè)試一個(gè)web程序時(shí),服務(wù)器會(huì)返回一個(gè)成功的HTTP響應(yīng)代碼,但是這個(gè)頁面有錯(cuò)誤或者被忽略部分。你可以添加斷言來檢查某個(gè)HTML標(biāo)簽,一些 錯(cuò)誤字符串,等等。JMeter允許你使用正則表達(dá)式創(chuàng)建斷言。JMeter 內(nèi)建取樣器4.2.
47、2 邏輯控制器保持邏輯控制器讓你定制當(dāng)發(fā)送請(qǐng)求時(shí)JMeter使用的判斷邏輯。邏輯控制器還可以作為下列任何元件的子元件:取樣器(請(qǐng)求)、配置元件、和其他邏輯控制器。邏輯控制器可以改變來自它們的子元件的請(qǐng)求順序。它們可以修改請(qǐng)求本身,導(dǎo)致JMeter重復(fù)請(qǐng)求,等。理解邏輯控制器在測(cè)試計(jì)劃中的效果,考慮下列測(cè)試樹:測(cè)試計(jì)劃 線程組 僅一次控制器 登錄請(qǐng)求(一個(gè)HTTP請(qǐng)求)加載搜索頁面(HTTP取樣器)Interleave Controller 搜索A(HTTP取樣器)搜索B(HTTP取樣器)HTTP默認(rèn)請(qǐng)求(配置元件)HTTP默認(rèn)請(qǐng)求(配置元件)Cookie管理器(配置元件)這個(gè)測(cè)試的第一件事就是
48、登錄請(qǐng)求僅在第一次經(jīng)過時(shí)被執(zhí)行。隨后的迭代會(huì)忽略它。這應(yīng)使用僅一次控制器。登陸后,下一個(gè)取樣器加載搜索頁面( 假設(shè)一個(gè)用登錄的web應(yīng)用程序,并到達(dá)搜索頁面去搜索)。這僅是一個(gè)簡(jiǎn)單的請(qǐng)求,不會(huì)被任何邏輯控制器過濾。加載搜索頁面后,我們要做一個(gè)搜索。事實(shí)上,我們想做兩個(gè)不同的搜索。然而,在每個(gè)搜索之間我們想要自己重新加載搜索頁面。我們通過4個(gè)簡(jiǎn)單 HTTP元件這樣做。(load search, search A, load search, search B). Instead, we use the Interleave Controller which passes on one child
49、request each time through the test. It keeps the ordering (ie - it doesnt pass one on at random, but remembers its place) of its child elements. Interleaving 2 child requests may be overkill, but there could easily have been 8, or 20 child requests.注意HTTP默認(rèn)請(qǐng)求屬于插入控制器。假如Search A和Search B共享同樣的PATH信息(一個(gè)
50、HTTP請(qǐng)求說明中包括域,端口,方法,協(xié)議路徑和參數(shù),附加其他可選項(xiàng))。兩個(gè)搜索請(qǐng)求訪問同樣的后端搜索引擎(比方 說Servle,或者cgi腳本),這樣是說得通的。與其兩者都配置使用相同信息的HTTP取樣器,我們可以抽象那些新到一個(gè)單獨(dú)的配置元件。當(dāng)內(nèi)部控制 器通過Search A或者Search B傳遞時(shí),它會(huì)從HTTP默認(rèn)請(qǐng)求配置元件中獲得值填充空白。所以我們可以為那些請(qǐng)求保留PATH域?yàn)榭?,然后把那些信息放到配置元件。在這個(gè)例子中, 這至多是一個(gè)很小的好處,但它顯示了這個(gè)特性。在這個(gè)樹中下一個(gè)元件是另一個(gè)HTTP默認(rèn)請(qǐng)求,這個(gè)時(shí)間被添加到線程組本身。這個(gè)線程組有一個(gè)內(nèi)建的邏輯控制器,因此
51、它正好使用這個(gè)配置元件做為 上面的描述。它填充任何穿過的請(qǐng)求的空白。 在web程序中你所有的HTTP取樣器元件DOMAIN域?yàn)榭眨@是極度有用的,替代的,把那些信息放到HTTP默認(rèn)請(qǐng)求元件中,添加到線程組。通過這樣 做,你可以在一個(gè)同的服務(wù)器通過改變你測(cè)試計(jì)劃中的一個(gè)域來測(cè)試你的程序。另外,你必須編輯每個(gè)取樣器。最后一個(gè)元件是一個(gè)HTTP Cookie管理器。一個(gè)Cookie管理器應(yīng)該添加到所有web測(cè)試上-否則JMeter會(huì)忽略Cookie。通過在線程組級(jí)添加它,我們可以確定所有的線程分享同樣的Cookie。邏輯控制器可以組合達(dá)到不同的結(jié)果。見內(nèi)建邏輯控制器列表。 4.3 監(jiān)聽器監(jiān)聽器提供訪
52、問JMeter收集當(dāng)JMeter運(yùn)行的關(guān)于測(cè)試計(jì)劃的信息。圖形結(jié)果監(jiān)聽器在一張圖上繪制響應(yīng)時(shí)間。查看結(jié)果樹監(jiān)聽器顯示了請(qǐng)求和響應(yīng)取樣器的細(xì)節(jié),并且以基礎(chǔ)的HTML和XML顯示響應(yīng)表現(xiàn)。其他監(jiān)聽器提供了摘要或者集合信息。另外,監(jiān)聽器可以指導(dǎo)它們收集的數(shù)據(jù)到一個(gè)文件供以后用。在JMeter中每一個(gè)監(jiān)聽器提供一個(gè)域來指出存儲(chǔ)數(shù)據(jù)的文件。在測(cè)試中監(jiān)聽器可以添加到任何位置。它們僅僅會(huì)從它們等級(jí)或者它們以下等級(jí)的元件收集數(shù)據(jù)。伴隨JMeter有很多有趣的監(jiān)聽器。4.4 定時(shí)器默認(rèn),JMeter線程發(fā)送請(qǐng)求時(shí)不在請(qǐng)求間暫停。我們建議你通過添加一個(gè)可用的定時(shí)器到你的線程組來指定一個(gè)延遲。如果你不添加延遲,JM
53、eter會(huì)在短時(shí)間內(nèi)產(chǎn)生太多請(qǐng)求,可能會(huì)壓倒你的服務(wù)。 定時(shí)器會(huì)使JMeter在一個(gè)線程開始每個(gè)請(qǐng)求間延遲一段時(shí)間。如果你選擇添加多于一個(gè)定時(shí)器到一個(gè)線程組,JMeter會(huì)在執(zhí)行取樣器前獲得定時(shí)器數(shù)量并暫停那個(gè)時(shí)間量。4.5 斷言斷言允許你斷言關(guān)于從測(cè)試服務(wù)器收到的響應(yīng)的行為。使用斷言你本質(zhì)上你可以測(cè)試你的應(yīng)用程序返回你期望的結(jié)果。 例如,你可以斷言一個(gè)查詢的響應(yīng)會(huì)包含一些特殊的文本。你指定的文本可能是Perl風(fēng)格的正則表達(dá)式, 并且你可以指出這個(gè)響應(yīng)是包含這個(gè)文本,還是匹配整個(gè)響應(yīng)。你可以添加一個(gè)斷言到任何取樣器。例如你可以添加一個(gè)斷言到HTTP請(qǐng)求檢查文本。JMeter會(huì)檢查在HTTP響應(yīng)
54、中表現(xiàn)的文本。如果JMeter沒有找到這個(gè)文本,它會(huì)標(biāo)記這個(gè)為一個(gè)失敗的請(qǐng)求。為了查看斷言結(jié)果,添加一個(gè)斷言監(jiān)聽器到線程組。Assertion-斷言,通常是用于對(duì)每一個(gè)request sampler進(jìn)行額外驗(yàn)證的工具。下面通過一個(gè)例子來介紹一下常用的幾個(gè)Assertions。假設(shè)現(xiàn)在要進(jìn)行一個(gè)登陸的壓力測(cè)試,下面是對(duì)pass的幾個(gè)定義:1.正確login后,必須收到返回的身份驗(yàn)證和用戶個(gè)人信息下載的完成信息;2.響應(yīng)時(shí)間不能超過150毫秒3.返回的結(jié)果大小不能小于750bytes根據(jù)以上的要求,我們?cè)趯?duì)應(yīng)的request sampler下面添加了以下的Assertions。A.Response
55、 AssertionResponse Field to Test - 標(biāo)示被檢查對(duì)象是什么?Pattern Matching Rules - 標(biāo)明被檢查對(duì)象與驗(yàn)證內(nèi)容之間的關(guān)系,Contains(包含關(guān)系);Matches(匹配關(guān)系);Equals(相等關(guān)系);Not(非關(guān)系)Pattern to Test - 需要驗(yàn)證的內(nèi)容列表B.Duration AssertionDuration to Assert - 允許的響應(yīng)時(shí)間的最大值C.Size AssertionSize to Assert - 對(duì)于返回結(jié)果文件大小的標(biāo)準(zhǔn)定義二、結(jié)果分析添加了以上的Assertions后,我運(yùn)行了一次腳本。以
56、下是存放結(jié)果的.jtl文件的內(nèi)容:timeStamp,elapsed,label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,Latency11/04/08 13:22:03,172,Do Login,200,OK,Thread Group 1-1,text,false,The operation lasted too long: It took 172 milliseconds, but should not have lasted longer than 150 millisec
57、onds.,835,17211/04/08 13:22:03,156,Do Login,200,OK,Thread Group 1-2,text,false,Test failed: text expected to contain /loginMsg=OK/,633,15611/04/08 13:22:03,156,Do Login,200,OK,Thread Group 1-3,text,false,The operation lasted too long: It took 156 milliseconds, but should not have lasted longer than
58、150 milliseconds.,839,15611/04/08 13:22:03,156,Do Login,200,OK,Thread Group 1-4,text,false,The operation lasted too long: It took 156 milliseconds, but should not have lasted longer than 150 milliseconds.,836,15611/04/08 13:22:03,78,Do Login,200,OK,Thread Group 1-5,text,true,779,7811/04/08 13:22:03,
59、63,Do Login,200,OK,Thread Group 1-7,text,false,Test failed: text expected to contain /loginMsg=OK/,570,6311/04/08 13:22:03,141,Do Login,200,OK,Thread Group 1-6,text,false,The result was the wrong size: It was 721 bytes, but should have been greater than 750 bytes.,721,14111/04/08 13:22:03,78,Do Logi
60、n,200,OK,Thread Group 1-9,text,false,The result was the wrong size: It was 724 bytes, but should have been greater than 750 bytes.,724,7811/04/08 13:22:03,204,Do Login,200,OK,Thread Group 1-10,text,false,The operation lasted too long: It took 204 milliseconds, but should not have lasted longer than
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個(gè)人住房抵押貸款還款管理協(xié)議4篇
- 2025版攝影棚租賃合同涵蓋廣告、商業(yè)拍攝6篇
- 2025年度水利工程個(gè)人承包協(xié)議書2篇
- 2025版地質(zhì)勘探打井合同范本3篇
- 二零二五年度車輛運(yùn)輸服務(wù)與貨物跟蹤系統(tǒng)合作協(xié)議2篇
- 2025年度魚塘承包權(quán)抵押貸款服務(wù)合同4篇
- 二零二五年度橙子出口歐盟認(rèn)證采購合同3篇
- 2025年度個(gè)人房屋維修欠款合同模板4篇
- 二零二五年度畜牧養(yǎng)殖生物安全防控體系建設(shè)合同4篇
- 2025年度個(gè)人房屋買賣合同履行監(jiān)督及保障協(xié)議2篇
- 2025年安徽馬鞍山市兩山綠色生態(tài)環(huán)境建設(shè)有限公司招聘筆試參考題庫附帶答案詳解
- 扣款通知單 采購部
- 電除顫操作流程圖
- 湖北教育出版社三年級(jí)下冊(cè)信息技術(shù)教案
- 設(shè)計(jì)基礎(chǔ)全套教學(xué)課件
- IATF16949包裝方案評(píng)審表
- 人教版八年級(jí)美術(shù)下冊(cè)全冊(cè)完整課件
- 1 運(yùn)行方案說明
- 北京房地產(chǎn)典當(dāng)合同
- PHILIPS HeartStart XL+操作培訓(xùn)課件
- 蘇科版九年級(jí)(初三)物理下冊(cè)全套課件
評(píng)論
0/150
提交評(píng)論