JMeter中的PDF文件转换

w41d8nur  于 2023-10-18  发布在  其他
关注(0)|答案(1)|浏览(226)

我正在使用beanshell采样器将一个pdf内容转换为另一个pdf。
在beanshell采样器中放入以下代码:

import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;

File file = new File("C:\\Users\\hp\\Downloads\\Instructions.pdf");
FileInputStream in = new FileInputStream(file);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
for (int i; (i = in.read(buffer)) != -1; ) 
{
bos.write(buffer, 0, i);
}
in.close();
byte[] pdfdata= bos.toByteArray();
bos.close();
vars.put("pdfdata",new String(pdfdata));

然后使用beanshell后处理器中的${pdfdata}变量将内容写入另一个pdf
Beanshell后处理器代码:-

FileWriter fstream = new FileWriter("newresult1.pdf",true);
BufferedWriter out = new BufferedWriter(fstream);
out.write(vars.get("pdfdata"));
out.close();
fstream.close();

文件已创建,但打开该文件时,它是空白的。没有内容显示在该文件中。所以,有人可以请告诉我如何解决这个问题吗?

mf98qq94

mf98qq941#

1.从JMeter 3.1开始,您应该使用JSR223测试元素和Groovy语言来编写脚本。
1.我在您的代码中没有看到任何“转换”,看起来您只是在尝试make a copy of the file,而使用Groovy,它将只有一行:

new File('newresult1.pdf').bytes = new File('C:\\Users\\hp\\Downloads\\Instructions.pdf').bytes

有关JMeter中的Groovy脚本的更多信息:Apache Groovy: What Is Groovy Used For?

相关问题