1. 程式人生 > 實用技巧 >軟測面試丨關於JMeter的面試問題,看這篇就夠了!

軟測面試丨關於JMeter的面試問題,看這篇就夠了!

JMeter是一款純java編寫負載功能測試和效能測試開源工具軟體。相比Loadrunner而言,JMeter小巧輕便且免費,逐漸成為了主流的效能測試工具,是每個測試人員都必須要掌握的工具之一。下面鬆勤程老師列舉分享一些關於JMeter問的最多的面試題。

在這裡插入圖片描述

1、解釋下什麼是JMeter?d

JMeter是一款Java開源工具,用於效能負載測試。它旨在分析和衡量Web應用程式和各種服務的效能和負載功能行為。

2、說明JMeter的工作原理?

JMeter就像一群將請求傳送到目標伺服器的使用者一樣。它收集來自目標伺服器的響應以及其他統計資料,這些統計資料通過圖形或表格顯示應用程式或伺服器的效能。

3、說明可以在哪裡使用函式和變數?

變數和函式可以寫入任何測試元件的任何欄位。

4、提到JMeter中的正則表示式是什麼?

根據模式(patterns),使用正則表示式搜尋和操作文字。JMeter可用於解釋在整個JMeter測試計劃中使用的正則表示式或模式的形式。

5、解釋什麼是取樣器(Samplers)和執行緒組(Thread group)?

執行緒組:對於任何測試計劃,執行緒組元件都是JMeter的開始部分。這是JMeter的重要元件,你可以在其中設定多個使用者和時間來載入執行緒組中給出的所有使用者。
取樣器:取樣器生成一個或多個取樣結果;這些取樣結果具有許多屬性,例如經過時間、資料大小等。取樣器允許JMeter通過取樣器將特定型別的請求傳送到伺服器,執行緒組決定需要發出的請求型別。一些有用的取樣器包括HTTP請求、FTP請求、JDBC請求等等。

在這裡插入圖片描述

6、使用JMeter構建的測試計劃是否依賴於作業系統?

通常,測試計劃以XML格式儲存,因此與任何特定的作業系統都沒有關係。它可以在JMeter可以執行的任何作業系統上執行。

7、提到JMeter中處理器的型別是什麼?

JMeter中的處理器型別為:①前處理器;②後處理器。

8、解釋什麼是預置處理器元件?列出一些前處理器元件?

預置處理器是在取樣器執行之前發生的事情。為了在執行取樣請求之前對其進行配置,或者用於更新未從響應文字中提取的變數,需要使用前處理器元件。
一些前處理器元件是:

  • HTTP URL重寫修飾符
  • HTTP使用者引數修飾符
  • HTML連結解析器
  • BeanShell PreProcessor

9、是否提到測試元件的執行順序?

測試計劃元件的執行順序為:
配置元件 -> 前置處理器 -> 計時器 -> 取樣器 -> 後置處理器 -> 斷言 -> 監聽器

10、正則表示式中的“包含”和“匹配”表示什麼?

在正則表示式中,contains表示正則表示式與目標的至少一部分匹配。匹配表示正則表示式匹配整個目標。如“alphabet”與“al.*t”匹配。

11、解釋什麼是配置元件?

配置元件與取樣器並行工作。要設定預設值和變數以供取樣器以後使用,可以使用配置元件。在合併範圍的開始,將先處理這些元件,然後再處理同一合併範圍中的任何取樣器。

在這裡插入圖片描述

12、說明JMeter中的計時器是什麼,計時器的型別是什麼?

預設情況下,JMeter執行緒將連續傳送請求而不會暫停。為了在請求之間暫停,使用了計時器。使用的一些計時器包括恆定計時器,高斯隨機計時器,同步計時器,均勻隨機計時器等。

13、解釋什麼是測試片段?

測試片段也是一種元件,例如“執行緒組”元件。唯一的區別是,除非模組控制器或包含控制器引用了測試片段,否則不會實現測試片段。

14、解釋什麼是JMeter中的斷言?斷言的型別有哪些?

斷言有助於驗證被測伺服器是否返回了預期結果。
JMeter中一些常用的斷言是:

  • 響應斷言
  • 持續時間斷言
  • 大小斷言(Size Assertion)
  • XML斷言
  • HTML斷言

15、說明如何減少JMeter中的資源需求?

①使用非GUI模式執行測試,如 jmeter –n –t test.jmx –l test.jtl
②在載入期間,測試不使用“檢視結果樹”或“查看錶中的結果”監聽器,僅在指令碼編寫階段使用它們;
③不要使用功能模式;
④與其使用大量相似的取樣器,不如在迴圈中使用相同的取樣器,並使用變數來改變取樣;

16、解釋如何在JMeter中執行尖峰測試(Spike testing)?

通過同步,可以實現計時器JMeter尖峰測試。同步計時器將阻塞執行緒,直到阻塞了特定數量的執行緒,然後將它們全部釋放,從而產生了巨大的瞬時負載。
小貼士:尖峰測試 也可以稱為衝擊測試,反覆衝擊伺服器。指的是在某一瞬間或者多個頻次下使用者數和壓力陡然增加的場景。

17、解釋如何在JMeter中捕獲身份驗證視窗的指令碼?

通常,可以通過錄制來捕獲指令碼:
首先,必須在Testplan(測試計劃)中使用 Threadgroup,然後在 Workbench(工作臺) 中使用HTTP代理伺服器;
之後,在“全域性設定”框中設定埠號(如8911),然後在 IE高階選項>連線>區域網設定中 開啟 代理設定,並將地址修改為localhost,埠改為8911。
然後,HTTP代理伺服器中選擇 目標控制器 Testplan>Threadgroup,然後啟動HTTP代理伺服器並執行應用進行登入。

18)列出幾個JMeter監聽器?

一些JMeter監聽器是:

  • 集合報告
  • 彙總報告
  • 檢視結果樹
  • 用表格檢視結果
  • 圖形結果
  • BeanShell Listener
  • 摘要報告等

19、什麼是分散式負載測試?如何實現?

分散式負載測試是整個系統可以用來模擬大量使用者負載的過程。通過使用主從配置,JMeter可以進行分散式負載測試。

20、在JMeter中是否有必要顯式呼叫嵌入式資源?

你可以消除所有嵌入式資源的顯式呼叫。請求底部有一個複選框,顯示“檢索嵌入式資源(retrieve embedded resources.)”。它會捕獲所有CSS、JPG等。這是在Web應用中查詢資源和斷開連結的絕妙方法。

21、解釋計時器(Timer)在JMeter中的作用是什麼?

在計時器的幫助下,JMeter可以延遲執行緒發出的每個請求之間的時間。它可以解決伺服器的過載問題。
在這裡插入圖片描述

22、解釋什麼是後置處理器?

要在發出請求後執行任何操作,則使用後處理器。例如,如果JMeter向Web伺服器傳送HTTP請求,並且如果你希望JMeter在Web伺服器顯示錯誤時停止傳送請求,那麼你將使用後處理器執行此操作。

23、JMeter為效能測試提供什麼好處?

JMeter提供效能測試方面的優勢,例如:

  • 它可以用於測試靜態資源和動態資源的效能;
  • 它可用於測試網站最大併發使用者數,從而分析定位網站瓶頸;
  • 它提供了效能報告的圖形化分析。

在這裡插入圖片描述

在這裡插入圖片描述
上面是我收集的一些視訊資源,在這個過程中幫到了我很多。如果你不想再體驗一次自學時找不到資料,沒人解答問題,堅持幾天便放棄的感受的話,可以加入我們扣扣群【313782132 】,裡面有各種軟體測試資源和技術討論。

在這裡插入圖片描述
當然還有面試,面試一般分為技術面和hr面,形式的話很少有群面,少部分企業可能會有一個交叉面,不過總的來說,技術面基本就是考察你的專業技術水平的,hr面的話主要是看這個人的綜合素質以及家庭情況符不符合公司要求,一般來講,技術的話只要通過了技術面hr面基本上是沒有問題(也有少數企業hr面會刷很多人)
我們主要來說技術面,技術面的話主要是考察專業技術知識和水平,上面也是我整理好的精選面試題。

趕快進來學習瞭解與交流吧。