性能面試一

1、性能測試流程

​ 需求調研-測試環境搭建-測試腳本編寫-數據製造-執行測試-迴歸調優-執行報告

2、java 線程的狀態,影響比較大的狀態是

​runnable, waiting, timewaiting,blocked,terminter

blocked timewaiting

3、jmeter怎麼使用Java類

​編寫一個類實現javasampleclient,並實現其方法,裏面寫業務邏輯,如果有對外暴漏的參數,可寫在getdefaultparamters方法中;
打成jar,將其和依賴的jar放在lib/etx下
jmeter使用時調用javasampler 引用

4、性能測試有哪些指標,各自的閾值是多少

cpu 系統的消耗的80%

Load 小於內存核數

磁盤io。80%

內存。 80%

網絡io。帶寬上線

5、tps壓不上去有哪些原因

壓力機本身的性能瓶頸

網絡io

被測程序的性能瓶頸

其他外部程序導致的time-waiting

中間件tomcat mysql nginx的鏈接限制

測試機的性能評級

Java線程的阻塞,等待

6、程序cpu高和數據庫cpu高的分析思路

程序cpu參考兩個數據tps和響應時間,如果tps比較高是正常的資源消耗,如果tps比較低,有可能是程序過於消耗cpu,可以使用jprofilter分析下

數據庫CPU高有可能是某些sql導致消耗資源過大,可根據慢查詢監控,查看執行計劃,是否未用索引或者索引失效導致

7、Java持久代和老年代存放什麼數據

持久代(方法區)存放靜態變量,常量,Java類的屬性

老年代存放類的實例和數組等

8、Java內存溢出爲什麼,有哪些分析方法

Java內存溢出是由於老年代中存活大量的對象,gc無法回收,導致虛擬機一直處於FGC狀態,此時會報出out of memory 錯誤;

首先找到jvm中那些對象佔用大量的空間,可使用jvisualvm 和jmap分析

9、如果構造測試數據,你主要用什麼

連接jdbc使用sql製造數據

使用存儲過程

使用接口構造數據

10、如何製造動態參數

把程序返回的結果通過正則匹配找到需要的參數,將其保存,程序調用使用該變量,因爲返回的結果是動態的,所以調用時也是動態的

11、性能測試設計,一般有哪些性能場景

基礎場景:基準測試,單交易測試 ,混合測試,穩定性

其他場景:高可用,異常

12、線下環境怎麼評估線程環境

線下環境和線上環境配置一致

使用單機器測試結果評估多機器考慮一定性能消耗

機器配置不要和線上機器配置差異過大

線上一般能評估性能問題,但是需要真實數據,還是直接在線上測試比較好

13、jmeter使用場景哪些beanshell

如果需要對使用前的參數做處理,可以使用beanshell的前置處理器

如果對返回的參數做邏輯判斷,可以使用beanshell的斷言


https://blog.csdn.net/liuyuzhu111/article/details/103852586

看完自己默寫的,腦子真是笨的異常,記不住,理解力差,只能背下來了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章