false true true login admin = password password1234 = port 2222 = passivePort 2223 = localhost 2222 false false false stoptest false 1 1 1 false groovy 92d044f3-7b32-4797-a3a8-49d07a78b01f import org.apache.ftpserver.FtpServer; import org.apache.ftpserver.FtpServerFactory; import org.apache.ftpserver.ftplet.FtpException; import org.apache.ftpserver.ftplet.UserManager; import org.apache.ftpserver.listener.ListenerFactory; import org.apache.ftpserver.usermanager.PropertiesUserManagerFactory; import org.apache.ftpserver.usermanager.impl.BaseUser; import org.apache.ftpserver.usermanager.impl.WritePermission; import org.apache.jmeter.util.JMeterUtils; import org.apache.ftpserver.ftplet.Authority; import java.util.List; import java.util.ArrayList; import org.apache.commons.io.FileUtils; import org.apache.ftpserver.DataConnectionConfiguration; import org.apache.ftpserver.DataConnectionConfigurationFactory; FileUtils.deleteDirectory(new File(JMeterUtils.getJMeterHome(), "bin/ftp_test")); new File(JMeterUtils.getJMeterHome(), "bin/ftp_test").mkdir(); DataConnectionConfigurationFactory dataConnectionConfigurationFactory = new DataConnectionConfigurationFactory(); dataConnectionConfigurationFactory.setPassivePorts(vars.get("passivePort")); DataConnectionConfiguration dataConnectionConfiguration = dataConnectionConfigurationFactory.createDataConnectionConfiguration(); PropertiesUserManagerFactory userManagerFactory = new PropertiesUserManagerFactory(); UserManager userManager = userManagerFactory.createUserManager(); BaseUser user = new BaseUser(); user.setName(vars.get("login")); user.setPassword(vars.get("password")); List authorities = new ArrayList(); authorities.add(new WritePermission()); user.setAuthorities(authorities); user.setHomeDirectory(new File(JMeterUtils.getJMeterHome(), "bin").getAbsolutePath()); userManager.save(user); ListenerFactory listenerFactory = new ListenerFactory(); listenerFactory.setDataConnectionConfiguration(dataConnectionConfiguration); listenerFactory.setPort(Integer.parseInt(vars.get("port"))); FtpServerFactory factory = new FtpServerFactory(); factory.setUserManager(userManager); factory.addListener("default", listenerFactory.createListener()); FtpServer server = factory.createServer(); server.start(); props.put("FTP_SERVER", server); 1 0 0 1000 100 continue false 1 1 1 false jmeter.properties ftp_test/jmeter-from-ftp-binary.properties true true false ${login} ${password} Apache JMeter Property file Assertion.response_data false 16 jmeter.properties ftp_test/jmeter-from-ftp-ascii.properties false true false ${login} ${password} Apache JMeter Property file Assertion.response_data false 16 ftp_test/jmeter-from-ftp-ascii-write.properties ftp_test/jmeter-from-ftp-ascii.properties false true true ${login} ${password} ftp_test/jmeter-from-ftp-ascii-write.properties ftp_test/jmeter-from-ftp-ascii-write-tocheck.properties false true false ${login} ${password} Apache JMeter Property file Assertion.response_data false 16 continue false 1 1 1 false groovy d09f6f8d-0f86-4cae-b88c-0ad9bd587d31 import org.apache.ftpserver.FtpServer; import org.apache.jmeter.util.JMeterUtils; import org.apache.commons.io.FileUtils; import org.apache.commons.io.FileUtils; FileUtils.deleteDirectory(new File(JMeterUtils.getJMeterHome(), "bin/ftp_test")); FtpServer server = (FtpServer) props.get("FTP_SERVER"); try { server.stop(); } catch (Exception ex) { log.info("Exception closing server", ex); } false saveConfig false false true true true true true false false false false false false true false false false false 0 true true FTP_TESTS.csv false saveConfig false false true true true true true false true true false false true false false false false false 0 true true FTP_TESTS.xml true