我有以下测试计划:
简短的故事(从测试计划中重要的是):
“获取号码文件”获取给定路径中的文件总数。 BeanShell采样器的内容:
import java.nio.file.*;
import java.io.*;
File folder = new File(vars.get("path"));
File[] files = folder.listFiles();
int counter = 0;
for (File file : files) {
if (file.getName().toString().contains(".xml") == true){
counter++;
}
}
String counterStr = Integer.toString(counter);
vars.put("counter",counterStr);
log.info("Output_counterStr:"+counterStr);
获取当前文档的数量:它是一个获取下一个文件的计数器(用于上传)BeanShell Sampler的内容:
import java.nio.file.*;
import java.io.*;
String fName = null;
int currentDoc = 0;
fName = vars.get("filename");
log.info("Output_fName:"+fName);
if (fName.contains("00")==true){
currentDoc = 0;
currentDoc ++;
} else {
currentDoc ++;
}
String currentDocStr = Integer.toString(currentDoc);
vars.put("currentDoc",currentDocStr);
log.info("Output_currentDoc:"+currentDocStr);
我想要获得的是在 WebSocket请求 - 响应采样器中使用 currentDoc 的值。如下:
<currentDocument>${currentDoc}</currentDocument>
<totalDocuments>${counter}</totalDocuments>
问题是$ {counter}实际上有一个值,而$ {currentDoc}实际上到了。知道什么可能是错的吗?您不能将该值传输到另一个测试片段中吗? (通过调用“while”功能中的Module控制器来增加计数器。
谢谢