Jmeter ::: java.io.IOException:无法删除文件:D:\ temp \ result.csv

时间:2015-05-19 13:01:52

标签: jmeter

我在“bean shell post proccessor”的拆卸步骤中编写了以下代码,删除在“一个线程组”中创建并在同一测试计划中的“不同线程组”中访问的所有CSV文件。

代码:

import org.apache.commons.io.FileUtils;
try {
FileUtils.cleanDirectory(new File("D:/temp"));
} catch (Exception ex) {
log.info("Script execution failed", ex);
}

我遇到了异常

jmeter.util.BeanShellTestElement: Script execution failed java.io.IOException: Unable to delete file: D:\temp\result.csv
at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2279)
at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at bsh.Reflect.invokeMethod(Reflect.java:134)
at bsh.Reflect.invokeStaticMethod(Reflect.java:98)
at bsh.Name.invokeMethod(Name.java:874)
at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at bsh.BSHBlock.eval(BSHBlock.java:80)
at bsh.BSHBlock.eval(BSHBlock.java:46)
at bsh.BSHTryStatement.eval(BSHTryStatement.java:86)
at bsh.Interpreter.eval(Interpreter.java:645)
at bsh.Interpreter.eval(Interpreter.java:739)
at bsh.Interpreter.eval(Interpreter.java:728)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.jmeter.util.BeanShellInterpreter.bshInvoke(BeanShellInterpreter.java:169)
at org.apache.jmeter.util.BeanShellInterpreter.eval(BeanShellInterpreter.java:196)
at org.apache.jmeter.util.BeanShellTestElement.processFileOrScript(BeanShellTestElement.java:151)
at org.apache.jmeter.protocol.java.sampler.BeanShellSampler.sample(BeanShellSampler.java:124)
at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:429)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:257)
at java.lang.Thread.run(Unknown Source)

2 个答案:

答案 0 :(得分:0)

有一次我尝试发送附有结果的电子邮件。我使用了tearDown Thread Group,结果是空的。在我看来,当你试图删除时它仍然是开放的。

答案 1 :(得分:-1)

import org.apache.commons.io.FileUtils;
log.info("Deleting old csv data");
List files = FileUtils.listFiles(
                new File("${folderPath}"), new String[]    {"csv"}, true); 
for (File file : files) {
    file.delete();
}
log.info("csv data deleted");