top jmeter interview questions
今後の面接の準備に役立つ、最もよくあるJMeter面接の質問と回答のリスト:
JMeterは、非常に短い期間でソフトウェアテスト業界で非常に人気があります。 Jmeterは、Apacheによって構築されたJavaアプリケーションです。
専門家は、Jmeterがアプリケーションのパフォーマンスを測定するために使用できる最高のオープンソース負荷テストツールであると考えています。この記事では、知っておく必要のあるJMeterのすべての主要な概念に焦点を当てています。
この記事には、最も人気のあるJMeterの面接の質問と回答のセットが、簡単な用語の例とともに含まれています。これにより、概念をよりよく理解し、面接を正常にクリアすることができます。
最も重要なJMeterインタビューの質問
=>参考文献:完全無料で読む JMeterチュートリアルシリーズはこちら 。
Q#1)JMeterのアーキテクチャについて説明してください。
回答: Jmeterは、基本的に負荷テストを目的として設計されたJavaベースのオープンソースアプリケーションです。 LoadRunnerでサポートされているすべての主要なプロトコルをサポートしています。他のブラウザとは異なり、JMeterはプロトコルのレベルで動作し、HTMLWebページに存在するJavaScriptを実行しません。
Q#2)JMeterは実際のブラウザの動作をシミュレートしますか?
回答: いいえ、JMeterは実際のブラウザの動作をサポートしていません。通常のブラウザのようにHTMLWebページをレンダリングしません。応答はHTML形式で表示できますが、実際のタイミングは生成されたサンプルには含まれていません。
Q#3)分散テストとは何ですか?
回答: 分散テストとは、負荷テストに複数のマシンを使用することを意味します。このマシンでは、1台のマシンをマスターにし、他のマシンをスレーブとして保持できます。すべてのマシンが同じネットワーク上にあり、JavaとJMeterのバージョンが同じである必要があることに注意することが非常に重要です。
Q#4)JMeterでの正規表現の使用は何ですか?
回答: 正規表現は、応答から動的にいくつかの値を抽出するために使用されます。これらの値は、後続の要求で使用することも、レポート目的で保存することもできます。正規表現は、プリプロセッサとポストプロセッサの両方で使用されます。
Q#5)JMeterのプロセッサの種類は何ですか?
回答: 基本的に、JMeterにはプリプロセッサとポストプロセッサの2種類のプロセッサがあります。
プリプロセッサはメインサンプラーの前に実行され、サンプラーのスコープを変更できますが、ポストプロセッサーはメインサンプラーの後に実行され、テスト計画の同じスコープ内のすべてのサンプラーに適用できます。これらを使用して、サーバーの応答からいくつかのフィールドを抽出し、それらを変数に格納できます。
Q#6)JMeterでのデータパラメータ化のさまざまな方法は何ですか?
回答: データパラメータ化により、異なるパラメータを使用して同じリクエストに対して値をハードコーディングする必要がない場合に、スクリプトを再利用できるようになります。
以下は、JMeterでサポートされているデータのパラメーター化です。
- CSVデータセット構成
- ユーザー定義変数。
Q#7)単一システムで推奨される最大スレッド数はいくつですか?
回答: これは、プロセッサ、JVM、割り当てられたメモリ-Xmxなどを含むシステムのハードウェア構成によって異なります。
スレッド数に影響を与える他の要因は、テスト計画内のコンポーネントの数、つまり構成要素またはプロセッサの数であり、GUI /非GUIモードを使用しているかどうかによっても異なります。
Q#8)ガウスタイマーとポアソンタイマーの違いを説明してください。
回答: ガウスタイマーとポアソンタイマーはどちらも、一定の遅延と追加のオフセットを使用して数式を処理します。 2つの違いは、ポアソンタイマーの場合のラムダ値の計算方法と、ガウスタイマーの場合の偏差の計算方法にあります。
Q#9)JMeterとLoadRunnerの主な違いは何ですか。
回答: JMeterは、業界におけるLoadRunnerの主要な競合企業と見なされています。 参加している主な違いのいくつかは次のとおりです。
| ロードランナー | Jmeter |
|---|---|
| ライセンスソフトウェア | オープンソースツール。 |
| マーキュリーによって開発されました | Apacheによって開発されました。 |
| UIはとても印象的です | UIが不足している |
| それはより多くの技術的能力を持っています。 | ロードランナーと比較して、技術的に健全ではありません。 |
| SAP、Siebel、Peoplesoftをサポートします。 | SAPとSiebelをサポートしていません |
Q#10)JMeterでの相互関係の使用は何ですか?
回答: 相互関係は、サーバーの応答から値を抽出し、それを変数に格納して、後続の他の要求で使用するプロセスです。
例えば、 セッションID / Cookie IDを使用する必要がある場合にログイン機能をテストするために、ログインページのGETリクエストの応答から値を抽出し、ログインのPOSTリクエストを行うときに同じ値を動的に使用できます。
Q#11)リスナーの種類は何ですか?
回答: リスナーは、負荷テストの実行結果を、テーブル、グラフ、ツリー、またはその他の表示可能な形式でさまざまな形式で保存し、クライアントに表示できるようにするために使用されます。 JMeterにはさまざまなタイプの組み込みリスナーがあり、要件に応じてプラグインを使用して他の多くのリスナーをインポートできます。
組み込みリスナーの一部は次のとおりです。
- 表に結果を表示
- ツリーで結果を表示する
- グラフの結果
- 集計グラフ
- 集計レポート
- アサーション結果
- 応答時間グラフ
Q#12)テストスクリプトレコーダのフローを説明してください。
回答: HTTP(s)Test Script Recorderは、アプリケーションからサーバーに送信されるすべてのHttp(s)リクエストを記録するために使用されます。一部の構成は、JMeterを機能させるためにJMeterで実行する必要があります。
httpsトラフィックを記録するための手順は次のとおりです。
- HTTPテストスクリプトレコーダーをWorkBenchに追加します。
- ポート番号を入力してプロキシサーバーを起動します。
- 「ワークベンチ」としてターゲットを選択するか、テスト計画にレコーディングコントローラーを追加し、その下にあるすべてのレコーディングを保存するために同じターゲットを選択します。
- プロキシサーバーを起動します。
- テストスクリプトレコーダーで使用されているのと同じポート番号を指す手動プロキシ設定を使用してブラウザーを構成します。
Q#13)JMeterはモバイルからのアクションを記録できますか?はいの場合、どのように?
回答: はい、JMeterはモバイルアプリケーションからサーバーに送信されるHTTPまたはHttpsリクエストを記録することもできます。モバイルとJMeterが同じネットワーク上にある必要があります。
必要な構成は次のとおりです。
- 指定されたポートで実行するようにJMeterでプロキシサーバーを構成します。
- モバイルwifi設定でプロキシを設定し、レコーダーで使用されているのと同じポート番号を入力します。
- モバイルにルートCA証明書をインストールします。
- 携帯電話からサーバーリクエストをヒットし、指定されたコントローラーによってキャプチャされるのを観察します。
Q#14)JMeterでマスタースレーブ構成を行う方法は?
回答: マスタースレーブ構成は、テスト対象のサーバーの負荷テストを実行するために複数のマシンが使用される分散テストの一部です。
すべてのマシンが同じネットワーク上にあり、すべてが同じバージョンのJMeterを使用していることが非常に重要です。分散テストでは、1台のマシンをマスターと見なし、他のマシンをいくつかの構成を行うことでスレーブとして保持します。
プロセスは以下に指定されています。
- マスターマシンで、JMeter.propertiesファイルを編集し、ファイルのremote_hostフィールドに対してスレーブマシンのIPアドレスを追加します。
- ファイルを保存して、JMeterを再度開きます。
- ここで、JMeterの(実行)メニューから(リモートスタート)を選択し、呼び出すマシンのIPを選択します。
- (実行)メニューを選択し、(すべてリモートスタート)を選択して、テスト用のすべてのスレーブマシンを起動します。
Q#15)JMeterでサポートされているプロトコルは何ですか?
回答: JMeter 次のようなさまざまな標準プロトコルをサポートします。
- HTTP / HTTPS
- 石鹸
- LDAP
- FTP
- SMTP
- TCP
Q#16)JMeterの変数と関数の構文を説明してください。
回答: 他のプログラミング言語と同様に、JMeterでも変数と関数を使用して、スクリプトを再利用できるようにします。
変数の構文 -$ {var}
JMeterには、さまざまなアクションを実行するために使用できる多くの組み込み関数があります。関数文字列は、関数ダイアログボックス自体から生成できます。
例えば、 マシンIPをmachineIP変数に格納する場合は、文字列$ {__ machineIP(machineIP)}を使用できます。
Q#17)JMeterをGUIモードで実行することが推奨されるのはなぜですか?
回答: JMeterテストは、GUIモードと非GUIモードの両方で実行できます。高負荷シナリオの場合、AWTイベントスレッドがテストを強制終了する可能性があるため、非GUIモードで負荷テストを実行することを強くお勧めします。
JMeterでサポートされているさまざまな非GUIモードは次のとおりです。
- コマンドライン
- ANTプラグイン
- MAVENプラグイン
- ジェンキンス
Q#18)JMeterでSeleniumスクリプトを実行することは可能ですか?はいの場合、どのように?
回答: はい、JMeterでセレンスクリプトを実行して、パフォーマンスに関するアイデアを得ることができます。
それを行うには2つの方法があります。 JUnitライブラリを使用してSeleniumスクリプトを作成し、Jarsとして保存して、同じものをJMeterディレクトリにコピーすることもできます。次に、JUnitサンプラーをテスト計画に追加し、Jarファイルをインポートします。
それ以外の場合は、WebdriverサンプラープラグインをJMeterextフォルダーに追加できます。 JMeterを再起動します。 WebdriverサンプラーでSeleniumコードを記述し、それを実行してパフォーマンスを確認します。
Q#19)JMeterでセッションとCookieをどのように管理しますか?
回答: セッションとCookieは、HTTPキャッシュマネージャーなどの構成要素を使用してJMeterで管理できます。この構成要素は、反復ごとにCookieをクリアするオプションを提供し、ユーザー定義のCookieを追加することもできます。
HTTPキャッシュマネージャーは、負荷テストの要件に従って、各反復後にキャッシュをクリアするのに役立ちます。また、キャッシュに格納できる要素の数を制限します。これらの構成要素は両方ともHTTPサンプラーに接続できます。
Q#20)JDBCリクエストをテストするための重要な手順は何ですか?
回答: JDBC要求は、データベースとの接続を確立し、クエリの応答時間を測定するために使用されます。
JDBCリクエストをテストするための重要な手順は次のとおりです。
- 構成要素の設定、 使用されているデータベースごとにデータベースURLとJDBCドライバークラスを追加する必要があるJDBC接続構成。また、サンプラーで使用できるように、この接続構成の変数名を追加してください。
- JDBCリクエストを追加します。上で追加したものと同じ変数名を追加し、クエリをテストに書き込みます。
推奨読書= >> JDBCインタビューの質問と回答
Q#21)BeanShellスクリプトとは何ですか?
回答: BeanShellは、JMeterで複雑なタスクを実行するために使用される軽量のJavaスクリプトです。 BeanShellサンプラーは、コーディングを使用してさまざまな機能を実行できます。スレッド番号の印刷、現在のサンプラーの実行、Cookieのフェッチなどを行うことができます。
Q#22)JMeterは完全なアプリケーションのパフォーマンスを測定できますか?たとえば、モバイルアプリに複数の画面があります。 JMeterは画面を反転するのにかかる時間を測定できますか?
回答: いいえ、JMeterは画面間の遷移時間を測定しません。 UIの相互作用ではなく、サーバーのアクションのみを測定できます。
Q#23)ルートCA証明書とは何ですか?
回答: HTTPS接続には、ブラウザがWebサーバーにアクセスしたときに確立される接続を認証するための証明書が必要です。 JMeterは、アクションを記録するためにSSLトラフィックをインターセプトするために一時的に生成します。モバイル経由でアクションを記録するには、アクションを記録するためにモバイルにこの証明書が必要です。
Q#24)システムごとに生成するスレッドの最大数を決定する要因はどれですか?
回答: システムのハードウェアによって異なります。
例えば、 2〜3 GHzのCPUでは、400〜600のスレッドを生成できます。また、テスト計画のコンポーネントによっても異なります。プロセッサとXML解析要素が多いほど、CPUの負荷が大きくなり、スレッドが少なくなります。高負荷の場合、負荷テストには複数のマシンを使用することをお勧めします。
Q#25)ワークベンチとは何ですか?なぜそれが必要なのですか?
回答: Workbenchは、必要に応じてテスト計画に追加できるいくつかのコンポーネントを追加するためのストレージ領域です。
ワークベンチのコンポーネントは、テスト計画とともに自動的に保存されません。それらは、テストフラグメントとして個別に保存する必要があります。ワークベンチの最も重要な部分はHTTP(s)テストスクリプトレコーダーです。これはhttpsリクエストの記録に非常に役立ち、後でロードを適用して応答時間を測定することができます。
Q#26)Tidy Parsingとは何ですか?
回答: Tidy Parsingは、Xpathエクストラクタで使用される解析の一種です。応答が純粋なXMLの場合、きちんとした解析は必要ありませんが、XHTMLの場合、正しい結果を取得するには、きちんとした解析オプションをチェックする必要があります。
Q#27)JMeterでサポートされている重要なプラグインは何ですか?
回答: JMeterは、高品質の結果を生成するのに役立つさまざまなタイプのプラグインをサポートしています。
サポートされている主なプラグインは次のとおりです。
- スレッドグループプラグイン–ステッピングスレッドグループプラグイン。
- Webdriverのようなサンプラープラグイン。
- リスナープラグイン。
Q#28)JMeterのコントローラーのタイプは何ですか?
回答: JMeterでは、リクエストの実行フローを制御するためにコントローラーが使用されます。
以下は、JMeterで使用されるコントローラーです。
- レコーディングコントローラー
- IFコントローラー
- コントローラー中
- トランザクションコントローラー
- ループコントローラー
- シンプルなコントローラー
- モジュールコントローラー
結論
JMeterの面接の質問に関するこの記事は、JMeterの概念に関する知識を大幅に深めるのに役立つと確信しています。
PCスキャンと修復ツールウィンドウ10
ここで取り上げるすべての質問を完全に理解することで、自信を持って面接を解くことができます。
皆様のご成功をお祈りしております!!!