Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using JMeter __FileToString function, getting java.io.FileNotFoundException

Tags:

jmeter

I am using JMeter __FileToString function to read JSON file in the request body as below.

${__FileToString(C:\\Users\\prasad\\Office\\SSP\\16.48\\sprint3\\${__eval(${CSV_Challenges_Dataset})}.txt,,)}

but I am getting below error when I run test. Can someone point me to right example on how to use JMeter fileToString function in windows.

2016/11/17 15:01:22 INFO  - jmeter.engine.StandardJMeterEngine: Running the test! 
2016/11/17 15:01:22 INFO  - jmeter.samplers.SampleEvent: List of sample_variables: [] 
2016/11/17 15:01:22 INFO  - jmeter.gui.util.JMeterMenuBar: setRunning(true,*local*) 
2016/11/17 15:01:22 INFO  - jmeter.engine.StandardJMeterEngine: Starting ThreadGroup: 1 : VerifyDecryptor 1L records 
2016/11/17 15:01:22 INFO  - jmeter.engine.StandardJMeterEngine: Starting 1 threads for group VerifyDecryptor 1L records. 
2016/11/17 15:01:22 INFO  - jmeter.engine.StandardJMeterEngine: Thread will continue on error 
2016/11/17 15:01:22 INFO  - jmeter.threads.ThreadGroup: Starting thread group number 1 threads 1 ramp-up 1 perThread 1000.0 delayedStart=false 
2016/11/17 15:01:22 INFO  - jmeter.threads.ThreadGroup: Started thread group number 1 
2016/11/17 15:01:22 INFO  - jmeter.engine.StandardJMeterEngine: Starting ThreadGroup: 2 : Thread Group 
2016/11/17 15:01:22 INFO  - jmeter.engine.StandardJMeterEngine: Starting 1 threads for group Thread Group. 
2016/11/17 15:01:22 INFO  - jmeter.engine.StandardJMeterEngine: Thread will continue on error 
2016/11/17 15:01:22 INFO  - jmeter.threads.ThreadGroup: Starting thread group number 2 threads 1 ramp-up 1 perThread 1000.0 delayedStart=false 
2016/11/17 15:01:22 INFO  - jmeter.threads.ThreadGroup: Started thread group number 2 
2016/11/17 15:01:22 INFO  - jmeter.engine.StandardJMeterEngine: All thread groups have been started 
2016/11/17 15:01:22 INFO  - jmeter.threads.JMeterThread: Thread started: Thread Group 2-1 
2016/11/17 15:01:22 INFO  - jmeter.threads.JMeterThread: Thread is done: Thread Group 2-1 
2016/11/17 15:01:22 INFO  - jmeter.threads.JMeterThread: Thread finished: Thread Group 2-1 
2016/11/17 15:01:22 INFO  - jmeter.threads.JMeterThread: Thread started: VerifyDecryptor 1L records 1-1 
2016/11/17 15:01:22 WARN  - jmeter.functions.FileToString: Could not read file: C:\Users\prasad\Office\SSP\16.48\sprint3\${CSV_Challenges_Dataset}.txt File 'C:\Users\prasad\Office\SSP\16.48\sprint3\${CSV_Challenges_Dataset}.txt' does not exist java.io.FileNotFoundException: File 'C:\Users\prasad\Office\SSP\16.48\sprint3\${CSV_Challenges_Dataset}.txt' does not exist
at org.apache.commons.io.FileUtils.openInputStream(FileUtils.java:299)
at org.apache.commons.io.FileUtils.readFileToString(FileUtils.java:1711)
at org.apache.commons.io.FileUtils.readFileToString(FileUtils.java:1734)
at org.apache.jmeter.functions.FileToString.execute(FileToString.java:102)
at org.apache.jmeter.engine.util.CompoundVariable.execute(CompoundVariable.java:142)
at org.apache.jmeter.engine.util.CompoundVariable.execute(CompoundVariable.java:117)
at org.apache.jmeter.testelement.property.FunctionProperty.getStringValue(FunctionProperty.java:101)
at org.apache.jmeter.testelement.AbstractTestElement.getPropertyAsString(AbstractTestElement.java:271)
at org.apache.jmeter.config.Argument.getValue(Argument.java:146)
at org.apache.jmeter.protocol.http.util.HTTPArgument.getEncodedValue(HTTPArgument.java:236)
at org.apache.jmeter.protocol.http.util.HTTPArgument.getEncodedValue(HTTPArgument.java:217)
at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sendPostData(HTTPHC4Impl.java:1294)
at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.handleMethod(HTTPHC4Impl.java:557)
at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java:375)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:74)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1146)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1135)
at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:465)
at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:410)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:241)
at java.lang.Thread.run(Unknown Source)
like image 802
Prasad Revanaki Avatar asked Nov 17 '16 09:11

Prasad Revanaki


1 Answers

If CSV_Challenges_Dataset is a filename, In that case, you can directly access it as follows:

${__FileToString(C:\\Users\\prasad\\Office\\SSP\\16.48\\sprint3\\CSV_Challenges_Dataset.txt,,)}

Don't include it in eval method if CSV_Challenges_Dataset is the actual file name.

If CSV_Challenges_Dataset is a variable, then you either you have NOT defined (Set the value) it in JMeter Test Plan. From logs It is clear that you do not define the value CSV_Challenges_Dataset.

 Could not read file: C:\Users\prasad\Office\SSP\16.48\sprint3\${CSV_Challenges_Dataset}.txt File

If defined, CSV_Challenges_Dataset should have been replaced by the actual value.

Add Debug sampler and View Results Tree, to know the value of CSV_Challenges_Dataset during run-time.

like image 61
Naveen Kumar R B Avatar answered Nov 11 '22 02:11

Naveen Kumar R B