0Pricing
Load Testing & Performance Benchmarking (JMeter & k6) · レッスン

JMeterの関数と変数

JMeter組み込み関数とユーザー定義変数を使い、柔軟なスクリプトを作成する方法を学びます。

「JMeterの関数と変数」はCoddyKit上の無料Load Testing & Performance Benchmarking (JMeter & k6)レッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはLoad Testing & Performance Benchmarking (JMeter & k6)学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Load Testing & Performance Benchmarking (JMeter & k6)コースには全4レッスンが含まれています。

このレッスンの一部はまだ翻訳されておらず、英語で表示されています。

Dynamic Data in JMeter

Welcome! In performance testing, it's rare for all users to do the exact same thing or use the exact same data.

To simulate real-world scenarios, your test scripts need to be flexible and dynamic. This lesson explores how to achieve this using JMeter's built-in functions and user-defined variables.

What are JMeter Variables?

A JMeter Variable is a placeholder that stores a value. Think of it like a temporary name tag for a piece of information.

  • They make your test scripts more readable.
  • They allow you to reuse values throughout your test plan.
  • Changing a value once updates it everywhere it's used.

This is crucial for maintainability and flexibility.

User Defined Variables (UDVs)

The simplest way to create variables in JMeter is using the User Defined Variables element.

You can add this element under your Test Plan or a Thread Group. Here, you define a variable name and its corresponding value.

This is perfect for static values you want to manage centrally, like a base URL or a default username.

Add Element:
  Test Plan > Add > Config Element > User Defined Variables

Configuration:
  Name: BASE_URL
  Value: http://example.com

  Name: USER_COUNT
  Value: 100

Using UDVs in Requests

Once defined, you can reference your User Defined Variables anywhere in your test plan using the syntax ${variableName}.

JMeter will replace this placeholder with the actual value of the variable during test execution.

HTTP Request Sampler:
  Protocol: http
  Server Name or IP: ${BASE_URL}
  Path: /login

HTTP Header Manager:
  Name: X-User-Count
  Value: ${USER_COUNT}

Introducing JMeter Functions

While variables store fixed or manually updated values, JMeter Functions generate dynamic values during runtime.

Functions start with ${__functionName(...)} and can take parameters. They help simulate more realistic user behavior, like generating random numbers or unique IDs.

The __Random Function

The __Random function generates a random integer within a specified range.

Its syntax is ${__Random(min, max, variableName)}:

  • min: The smallest number to generate.
  • max: The largest number to generate.
  • variableName: (Optional) A variable to store the generated value.

This is great for picking random items from a list or simulating varying input.

Example:
  ${__Random(1, 10,)}
  // Generates a random number between 1 and 10

  ${__Random(100, 999, myRandomID)}
  // Generates a random number between 100 and 999
  // and stores it in a variable named 'myRandomID'

Using __Random in a Test

Let's say you want to simulate users accessing random product IDs on an e-commerce site. You can use __Random directly in your HTTP Request path.

This helps distribute the load across different resources, mimicking real user behavior.

HTTP Request Sampler:
  Protocol: http
  Server Name or IP: ${BASE_URL}
  Path: /products/${__Random(1001, 2000,)}

  // This would access paths like:
  // /products/1543
  // /products/1987
  // etc.

The __counter Function

The __counter function generates a sequence of unique numbers. It's useful when you need to provide unique identifiers or sequential data.

Its syntax is ${__counter(true/false, variableName)}:

  • true: Counter is global across all thread groups.
  • false: Counter is local to each thread.
  • variableName: (Optional) A variable to store the generated value.
Example:
  ${__counter(false,)}
  // Generates 1, 2, 3... for each thread independently

  ${__counter(true, globalCount)}
  // Generates 1, 2, 3... globally across all threads
  // and stores it in 'globalCount'

Using __counter for Unique IDs

Imagine you're testing an order creation API where each order needs a unique ID. Using __counter ensures that every request sends a distinct order ID.

This is vital for avoiding data conflicts and accurately simulating transactions.

HTTP Request Sampler:
  Method: POST
  Path: /orders

  Body Data:
  {
    "orderId": "ORDER-${__counter(true,)}",
    "customerName": "Test User"
  }

  // Example Body Data:
  // {"orderId": "ORDER-1", ...}
  // {"orderId": "ORDER-2", ...}

Functions & Variables Quiz

Which of the following statements about JMeter variables and functions are TRUE?

Recap: Functions & Variables

Great job! You've learned how to make your JMeter tests more dynamic and realistic:

  • JMeter Variables provide placeholders for reusable values like base URLs.
  • User Defined Variables (UDVs) are a simple way to define these static variables.
  • JMeter Functions generate values dynamically during test runtime.
  • The __Random function creates random numbers for varied inputs.
  • The __counter function generates unique, sequential numbers.

Mastering these will significantly improve the flexibility and accuracy of your load tests!

よくある質問

「JMeterの関数と変数」レッスンは無料ですか?

はい。「JMeterの関数と変数」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Load Testing & Performance Benchmarking (JMeter & k6)コースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Load Testing & Performance Benchmarking (JMeter & k6)コースには全4レッスンが含まれています。

「JMeterの関数と変数」で何を学びますか?

JMeter組み込み関数とユーザー定義変数を使い、柔軟なスクリプトを作成する方法を学びます。 ブラウザで直接実行するハンズオンコードでLoad Testing & Performance Benchmarking (JMeter & k6)を演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Load Testing & Performance Benchmarking (JMeter & k6)を始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのLoad Testing & Performance Benchmarking (JMeter & k6)は初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。

「JMeterの関数と変数」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このLoad Testing & Performance Benchmarking (JMeter & k6)レッスンでコードを書いて実行できますか?

はい。すべてのLoad Testing & Performance Benchmarking (JMeter & k6)レッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. CSVデータによるパラメーター化
  2. 動的な値の処理(相関)
  3. JMeterの関数と変数
  4. JDBCによるデータベーステスト
← Load Testing & Performance Benchmarking (JMeter & k6)に戻る