jmeter的工具:性能測試
負載和壓力的區(qū)別:
負載測試:在一定的工作負荷下漂彤,給系統(tǒng)造成du的負zhi荷及系統(tǒng)響應(yīng)的時間毛萌。
壓力測試:在一定的負荷條件下,長時間連續(xù)運行系統(tǒng)給系統(tǒng)性能造成的影響
TPS和QPS的區(qū)別:
tps可以理解為是每秒對事務(wù)的處理的能力qps是每秒對服務(wù)器的查詢能力
性能測試web端和app端測試
web端的性能指標:
https://www.cnblogs.com/flyr/p/5509451.html
響應(yīng)時間(客戶端向服務(wù)端的請求時間,服務(wù)端對數(shù)據(jù)庫的請求時間县貌,服務(wù)端將結(jié)果展現(xiàn)
到頁面的時間)
響應(yīng)時間258原則
吞吐量:指的是在一次性能測試過程中網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)量的總和.吞吐量/傳輸時間,就是
吞吐率.
TPS:每秒處理事務(wù)能力
并發(fā)數(shù):單用戶的多次操作
多用戶的單次操作
點擊率:每秒鐘用戶向WEB服務(wù)器提交的HTTP請求數(shù).
資源使用率:cpu<80%內(nèi)存<80%io<40網(wǎng)絡(luò)<30%
app端的性能指標
App端的性能指標:
Cpu內(nèi)存流量電量啟動時間幀率
cpu<80%內(nèi)存<80%
電量的損耗:
流量的損耗:
線程和進程區(qū)別:
接口測試:postmanjmeter
接口文檔中:
1.url地址http://apis.juhe.cn/lottery/query?key=111&lottery_id=ssq
http/https
域名:apis.juhe.cn
路徑:/lottery/query
請求方式:get/post
TPC/IPOSI
三次握手四次揮手:
200-請求成功缸夹,已經(jīng)正常處理完畢
301-請求永久重定向痪寻,轉(zhuǎn)移到其它URL
302-請求臨時重定向
304-請求被重定向到客戶端本地緩存
400-客戶端請求存在語法錯誤
401-客戶端請求沒有經(jīng)過授權(quán)
403-客戶端的請求被服務(wù)器拒絕,一般為客戶端沒有訪問權(quán)限
404-客戶端請求的URL在服務(wù)端不存在
500-服務(wù)端永久錯誤
Jmeter的接口測試:
1測試計劃中添加線程租
2在線程租中添加http請求在http請求中需要填入
3在線程中添加查看結(jié)果樹
Jmeter的壓力測試
1測試計劃中添加線程租
2在線程租中添加http請求在http請求中需要填入
3.在線程租中進行修改并發(fā)數(shù)量(修改線程數(shù)量修改循環(huán)次數(shù))
4.在線程組中進行添加聚合報告/表格查看結(jié)果/圖形結(jié)果
Jmetere的斷言:
斷言用來判斷接口的返回值是否匹配
在線程租中進行添加斷言--響應(yīng)斷言并將json放入到響應(yīng)結(jié)果中在察看結(jié)果樹中來
Jmeter的參數(shù)化關(guān)聯(lián)都是用${變量名}
A:用戶變量一個變量對應(yīng)一個變量值
B:用戶參數(shù)一個變量對應(yīng)多個變量值
C:可以使用csv文件方式
1.用txt文件或者是excel明未,csv文件
2.書寫參數(shù)化值一個http請求的所有參數(shù)以行為單位多個值用,隔開
多個http請求對應(yīng)是多行
3.在線程組中添加csvDataconfig匹配對應(yīng)的文件和參數(shù)名
D:可以使用函數(shù)助手的方式來隨機生成${}參數(shù)變量
https://blog.csdn.net/qq_34659777/article/details/86005723
Jmeter的對數(shù)據(jù)庫鏈接(對數(shù)據(jù)庫進行壓力測試)
測試數(shù)據(jù)的來源:
A.復(fù)用開發(fā)的原有數(shù)據(jù)b.復(fù)用線上的真實數(shù)據(jù)c.直接使用線上數(shù)據(jù)d.測試人員手動添加
E:產(chǎn)品或者是運營提供數(shù)據(jù)
在線程中添加配置原件jdbconectionconfig
事務(wù)的特性:ACID
原子性
隔離性
一致性
持久性
Commit提交事務(wù)
Rollback事務(wù)回滾
在線程租中添加取樣器中的jdbcrequest
注意:querytype類型不同則寫sql語句不同
https://blog.csdn.net/vikeyyyy/article/details/80367135
Badboy錄制(web端)
借用badboy
1.打開badboy的錄制按鈕
2.Badboy的瀏覽器中輸入web項目的網(wǎng)址http://項目名:端口號/路徑
3.停止錄制并在file選項中進行導(dǎo)出jmeter(exceportjmeter)生成.jmx文件
4.在jmeter中將.jmx打開并添加到線程中
Jmeter錄制(app端)
在線程租中添加http代理服務(wù)器槽华,然后修改的是
***http代理服務(wù)器是單擊測試計劃中非測試原件中找
1.端口號(和移動端設(shè)備的端口號保持一直)ip地址進行保持一直
2.將錄制好的http請求保存的位置可以修改(1.直接放入測試計劃中,2趟妥∶ㄌ可以在放入到線
程組中)
3.在線程組中進行添加查看結(jié)果樹/聚合報告的時候就可以對多個接口或者是業(yè)務(wù)場景
進行錄制
Jmeter的正則提取器
面試題:
在一個線程組中,B請求需要使用A請求返回的數(shù)據(jù)披摄,也就是常說的關(guān)聯(lián)亲雪,將上
一個請求的響應(yīng)結(jié)果作為下一個請求的參數(shù),則需要對A請求的響應(yīng)報文使用后
置處理器疚膊,其中最方便最常用的就是正則表達式提取器了义辕。
Jmeter+ant+jenkins的生成測試報告
接口自動化框架
Jmeter對單接口或者是對業(yè)務(wù)場景進行設(shè)置最終得到對應(yīng)的性能參數(shù)
Ant將jmeter默認生成的測試報告轉(zhuǎn)換為html格式
Jenkins實現(xiàn)持續(xù)集成測試(定時操作)
Svn/git版本
前置條件:jdkjmeterant
步驟:1.在黑白窗口中輸入javajavac安裝jdk
2.在黑白窗口中輸入jmeter-v安裝jmeter
3.修改jmeter的安裝目錄下bin目錄下jmeter.properties以記事本的方式打開
將
4.定義文件夾來建立目錄結(jié)構(gòu)Test--
5.在黑白窗口中輸入ant-version將ant的環(huán)境變量進行設(shè)置
6.修改在test/autotest/pc/buidler.xml的配置文件
A.buidler.xml文件所在位置
B.配置jmeter的文件所在位置
C.默認生成jtml和轉(zhuǎn)換為html的測試報告的位置
D.接受和發(fā)送郵箱的賬號
E..jmx文件所在位置
F.發(fā)送測試報告郵箱賬號和授權(quán)碼以及開啟郵箱的smtp/pop3的權(quán)限
7.實現(xiàn)jenkins集成(git/svn)
a.解壓tomcat
b.將jenkins.war包放入到webapps下
c.啟動tomcat不成正常啟動或者是出現(xiàn)閃退現(xiàn)象原因
(tomcat的版本和jdk版本問題jre環(huán)境變量問題tomcat的端口被占用
進程被占用)
(如果不能正常啟動的話并之前有啟動記錄需要刪除.jenkins的倉庫)
C:\Users\Administrator\.jenkins
8.安裝jenkins的插件對應(yīng)密碼在4656681de877489886cd62c26a96cd3a
9.對jenkins進行構(gòu)建
a.構(gòu)建自由風(fēng)格的項目并取名
b.配置jdk以及javahome的路徑
c.配置ant以及ant的環(huán)境變量
D.配置定時
E.配置builder.xml文件
使用builernow開始執(zhí)行構(gòu)建
如果在測試工作中需要借用svn/git源碼工具進行拉取代碼并進行借用gradle進行打
包并進行測試生成測試報告
Jmeter的插件
1.進行下載jmeter-plugins-manager-1.4.jar到j(luò)meter/lib/ext文件下
2.重啟jmeter
3.對tpsresponsetime