インターフェイス テストの共通スキル: Jmeter のデータベース操作

01. JDBCリクエストの設定

1. 必要なドライバー jar パッケージを追加します

異なるデータベースを使用するには、異なる jar パッケージを導入する必要があります。

方法 1: jar パッケージを jmeter の lib ディレクトリに直接コピーする

mysqlデータベース:

mysql-connector-java-5.1.28.jar をダウンロードし、jmeter ルート ディレクトリの lib ディレクトリに配置します。

SQLサーバーデータベース:

sqljdbc4.jar をダウンロードし、jmeter ルート ディレクトリの lib ディレクトリに置きます。

オラクルデータベース:

\product\10.2.0\db_1\jdbc\lib\ojdbc14.jar を oracle データ インストール ディレクトリの下にあるものを、jmeter ルート ディレクトリの下の lib ディレクトリに置きます

方法 2: テスト計画による

jar を jmeter の lib ディレクトリにコピーする方法を使用しない場合は、Jmeter のテスト プランを使用して、対応する jar パッケージ (以下の Oracle データをインポートするための jar パッケージなど) をインポートすることもできます。
ここに画像の説明を挿入

2. 重要なパラメータの説明

変数名:

データベース接続プールの名前。複数の jdbc 接続構成を使用でき、それぞれに異なる名前を付けることができ、jdbc リクエストで使用するために適切な接続プールを選択できます。

データベースURL:

データベース URL、jdbc:mysql://host ip またはマシン名:mysql リスニング ポート番号/データベース名 (例: jdbc:mysql://localhost:3306/test)

JDBCドライバークラス:

JDBCドライバー

ユーザー名:

データベースログイン用のユーザー名

パスワード:

データベースログイン用のパスワード

さまざまなデータベースの具体的な入力方法については、次のフォームを参照してください。
ここに画像の説明を挿入
入力後は、おおよそ次のようになります。
ここに画像の説明を挿入

重要なパラメータの説明:

変数名:

データベース接続プールの名前は、JDBC 接続構成の変数名バインド プールの名前と一致している必要があります。

問い合わせ:

埋められた SQL ステートメントの最後に「;」を追加しないでください。

パラメータの痛み:

パラメータ値

パラメータの種類:

パラメータのタイプについては、java.sql.Types の Javadoc を参照してください。

変数名:

SQL ステートメントによって返された結果を保存する変数の名前

結果変数名:

返されたすべての結果を保持するオブジェクト変数を作成する

クエリタイムアウト:

クエリタイムアウト

結果セットのハンドル:

呼び出し可能なステートメントによって返された結果を処理する方法を定義します
ここに画像の説明を挿入
。 3. 実行結果:
ここに画像の説明を挿入

02. JDBCリクエストのパラメータ化

方法 1)

変数を定義し、SQL クエリで変数を使用します。

1. テスト計画で変数を定義する

(もちろん、パラメータ化も使用できます: Jmeter パラメータ化):
ここに画像の説明を挿入
2. SQL クエリで ${変数名} を使用して参照します。

select * from test where name='${name}'

ここに画像の説明を挿入
方法 2)

次の図に示すように、SQL クエリのプレースホルダーとして「?」を使用し、パラメーター値とパラメーターの型を渡します。

1. 渡されるパラメータの値は定数で、図に示すように 2 つの変数が渡され、複数の変数は「,」で区切られます。ここで、int 型のデータがある場合は、パラメータの型でそれを varchar 型としてマークする必要があります。そうしないと機能しません。
ここに画像の説明を挿入
2. 渡されたパラメーター値は変数です。${変数名} を使用します。
ここに画像の説明を挿入 

03. 変数名パラメータ

1. 使用方法:

jmeter 公式 Web サイトの説明は次のとおりです。このパラメータに値が設定されている場合、SQL ステートメントによって返されたデータと返されたデータの総行数が保存されます。SQL ステートメントが 2 行、3 列を返し、変数名が A、C に設定されているとします。

次に、次の変数が次のように設定されます。

A_#=2 (総行数)

A_1=列 1、行 1

A_2=列 1、行 2

C_#=2 (総行数)

C_1=列 3、行 1

C_2=列 3、行 2

戻り結果が 0 の場合、A_# と C_# は 0 に設定され、他の変数は設定されません。

初めて 6 行のデータが返され、2 回目には 3 行のデータのみが返された場合、初回のさらに 3 行のデータ変数はクリアされます。

KaTeX 解析エラー: 位置 3 の '_' の後に期待されるグループ: {A_̲#}, {A_1}... を使用して、対応する値を取得できます。

例:

すべてのデータを見つけるために、引き続き上記のデータベースを使用します。テスト テーブルには 3 つのフィールドと 5 つのレコードがあります (忘れた場合は、最初のステップに戻って確認できます)。

1. 「パラメータ 4」という jdbc リクエストを追加し、出力結果を表示するための「デバッグ サンプラー」を追加し、変数名を column1、column2、column3 に設定します。 2. 実行結果
ここに画像の説明を挿入
:
ここに画像の説明を挿入

解析:

column1 は最初の列のすべてのデータを表し、column1_# は最初の列の行数を取得できます。

column1_n: 1列目のn行目のデータを取得します。

column2とcolumn3の機能は同様で、1列目と3列目のデータだけが必要な場合はcolumn1、column3と記述でき、途中の「,」は省略できません。

04. 結果変数名パラメータ

1. 使用方法:

このパラメータの値を設定すると、オブジェクト変数が作成され、返された結果がすべて保存され、特定の値のメソッドが取得されます。

columnValue = vars.getObject("resultObject").get(0).get("Column Name")

ここに画像の説明を挿入

2. 実行結果:
ここに画像の説明を挿入


              [以下は、私が編集した 2023 年の最も完全なソフトウェア テスト エンジニア学習ナレッジ アーキテクチャ システム図です]


1. Pythonプログラミングの入門から習得まで

2.インターフェース自動化プロジェクトの実戦 

3. Web自動化プロジェクトの実戦


4. アプリ自動化プロジェクトの実戦 

5. 一流メーカーの再開


6. DevOps システムのテストと開発 

7. 一般的に使用される自動テストツール

8、JMeterのパフォーマンステスト 

9. まとめ(最後にちょっとしたサプライズ)

寿命が長いのでオイルを追加してください。すべての努力は決し​​て裏切られることはなく、粘り強く続ける限り、最後には必ずご褒美が得られます。自分の時間を大切にして夢を追いかけてください。初心を忘れず、前に進んでください。あなたの未来はあなたの手の中にあります!

人生は短く、時間は貴重です。将来何が起こるかを予測することはできませんが、現在の瞬間を把握することはできます。一日一日を大切にし、自分自身をより強く、より良くするために努力してください。確固たる信念、粘り強い追求、成功はやがてあなたのものになります。

常に自分自身に挑戦することによってのみ、常に自分を超えることができます。夢を追い続け、勇敢に前進すれば、その葛藤の過程がとても美しく、やりがいのあるものであることに気づくでしょう。自分を信じてください、あなたならできるよ! 

                                    

おすすめ

転載: blog.csdn.net/nhb687095/article/details/132082388