You can access these variables using Beanshell as follows:
- JMeter’s base dir
import org.apache.jmeter.services.FileServer; String baseDir = FileServer.getFileServer().getBaseDir(); vars.put("baseDir", baseDir);
- JMeter’s script location (GUI mode)
import org.apache.jmeter.gui.GuiPackage; String testPlanFile = GuiPackage.getInstance().getTestPlanFile(); vars.put("testPlanFile", testPlanFile);
- JMeter’s script name (non-GUI mode)
import org.apache.jmeter.services.FileServer; String scriptName = FileServer.getFileServer().getScriptName(); vars.put("scriptName", scriptName);
If you prefer you can get the same using __Beanshell() function as
${__BeanShell(import org.apache.jmeter.services.FileServer; FileServer.getFileServer().getBaseDir())}
and it will return current base directory where it is called.