How Do You Write Data to Excel in JMeter Using BeanShell Scripting?


Larry Thompson

Writing data to Excel in JMeter can be achieved using BeanShell scripting. BeanShell is a lightweight scripting language that is compatible with Java, making it a powerful tool for extending the functionality of JMeter. In this tutorial, we will explore how to use BeanShell scripting to write data to an Excel file in JMeter.


Before we begin, ensure that you have the following:

  • JMeter installed on your machine
  • An Excel file template with the desired structure
  • The Apache POI library (poi-4.1.2.jar) added to your JMeter classpath

Step 1: Set Up the Test Plan

First, let’s set up a basic test plan in JMeter:

  1. Open JMeter and create a new Test Plan.
  2. Add a Thread Group to the Test Plan.
  3. Add an HTTP Request sampler to the Thread Group and configure it with your desired settings.
  4. Add any necessary assertions or listeners for result analysis.

Step 2: Add a Beanshell PostProcessor

In order to write data to an Excel file, we need to add a BeanShell PostProcessor element:

  1. Right-click on the HTTP Request sampler and navigate to “Add” > “Post Processors” > “BeanShell PostProcessor”.
  2. In the BeanShell PostProcessor’s script area, enter the following code:
// Import required classes
import org.xssf.*;

// Get the Excel file path
String filePath = "/path/to/your/excel/file.xlsx";

// Open the workbook
Workbook workbook = new XSSFWorkbook(new FileInputStream(filePath));

// Get the first sheet
Sheet sheet = workbook.getSheetAt(0);

// Create a new row and set values
Row newRow = sheet.createRow(sheet.getLastRowNum() + 1);
newRow.createCell(0).setCellValue("Example Data");

// Save the changes to the Excel file
FileOutputStream outputStream = new FileOutputStream(filePath);

Step 3: Update the Excel File Path

Make sure to update the filePath variable in the BeanShell script with the actual path to your Excel file. This is where JMeter will write the data.

Step 4: Run the Test Plan

Save your test plan and run it in JMeter. Once the execution is complete, JMeter will write the specified data to your Excel file.

Note: If you want to write dynamic data from JMeter variables, you can use JMeter’s built-in functions or BeanShell scripting to retrieve and set values accordingly.


In this tutorial, we have learned how to use BeanShell scripting in JMeter to write data to an Excel file. By leveraging BeanShell’s compatibility with Java and Apache POI library’s functionality, we can easily manipulate Excel files within our performance tests. This capability opens up a wide range of possibilities for result analysis and reporting in JMeter.

Remember, practice makes perfect! So go ahead and experiment with different configurations and scenarios to enhance your understanding of writing data to Excel using BeanShell scripting in JMeter.

Discord Server - Web Server - Private Server - DNS Server - Object-Oriented Programming - Scripting - Data Types - Data Structures

Privacy Policy