# Running Load Test with FTP Server

### What is FTP (File Transfer Protocol)&#x20;

FTP server is an application that allows files to be transferred from one computer to another. Files can be transferred to any computer over the Internet.&#x20;

FTP is a standard network protocol used for the transfer of files between a client and server on a computer network.&#x20;

![](https://firebasestorage.googleapis.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUOy4kHWrKkuqX5mhH7%2Fuploads%2FtXXB87x9n7ByWyGwED7e%2Ffile.png?alt=media)

### Why Do We Need to Load Test the FTP Server ?&#x20;

There may be slowdowns in network speeds, latency or server on the FTP server. File transfer can take minutes or hours when the FTP server starts to slow down or crashes. The effect can be much greater when there are large file shares via the FTP server.&#x20;

Load testing is needed to measure how much load the FTP server can withstand and to find bottlenecks.&#x20;

### How to Test FTP Servers with Jmeter?&#x20;

Add FTP Request Defaults (Test Plan -> Add -> Config Element -> FTP Request Defaults)&#x20;

![](https://firebasestorage.googleapis.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUOy4kHWrKkuqX5mhH7%2Fuploads%2F5v0F8QXdhJJ9zAQW9Zlc%2Ffile.png?alt=media)

FTP Request Defaults is not used to send an ftp FTP request. It is used to make the definitions in an FTP request. &#x20;

You can set the required elements for a test, as shown below. We are using the Server at ftp.domain.com, a sample FTP server running on the standard FTP port 21.&#x20;

![](https://firebasestorage.googleapis.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUOy4kHWrKkuqX5mhH7%2Fuploads%2Ft93JrjNtKPf01YSiIDB0%2Ffile.png?alt=media)

![](https://firebasestorage.googleapis.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUOy4kHWrKkuqX5mhH7%2Fuploads%2FoECRf0VjXUXpmyOyJdMe%2Ffile.png?alt=media)

Add FTP Request (Thread Group -> Add -> Sampler -> FTP Request)&#x20;

You need to add "FTP Request” to send an FTP request. &#x20;

We write the path to the file and the username and password of the FTP server as shown below. Since we defined it in "FTP Request Defaults" before, we do not need to define the "Server Name or IP" part again, so we leave this field blank.&#x20;

![](https://firebasestorage.googleapis.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUOy4kHWrKkuqX5mhH7%2Fuploads%2FM58YkdDmQqZuwUE0ssIp%2Ffile.png?alt=media)

Then we start the test.&#x20;

Enjoy testing!

{% content-ref url="../creating-your-first-test" %}
[creating-your-first-test](https://wiki.loadium.com/creating-your-first-test)
{% endcontent-ref %}

{% content-ref url="../create-test/jmeter-test" %}
[jmeter-test](https://wiki.loadium.com/create-test/jmeter-test)
{% endcontent-ref %}

{% content-ref url="../about-loadium/vuh-virtual-user-hour" %}
[vuh-virtual-user-hour](https://wiki.loadium.com/about-loadium/vuh-virtual-user-hour)
{% endcontent-ref %}

If you don't see the answer to your question here, please [reach out to us](https://loadium.com/contact-us/) to let us know! We're always improving our documentation.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.loadium.com/jmeter-corner/running-load-test-with-ftp-server.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
