我正在开发一个JMeter脚本来下载一个xlsx文件。当脚本执行时,它会导致错误。我检查了JMeter日志文件,发现如下:
2023-11-03 15:15:22,315 ERROR o.a.j.r.ResultSaver:创建示例文件时出错
java.io.FileNotFoundException:xxxxxxxxxxxxxx(访问被拒绝)
在java.io.FileOutputStream.open 0(本机方法)~[?:1.8.0_202] at java.io.FileOutputStream.open(FileOutputStream.java:270)~[?:1.8.0_202] at java. io. FileOutputStream.(FileOutputStream.java:213)~[?:1.8.0_202] at java. io. FileOutputStream.(FileOutputStream.java:162)~[?:1.8.0_202] at org.apache.jmeter.reporters.ResultSaver.saveSample(ResultSaver.java:199)~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.reporters.ResultSaver.processSample(ResultSaver.java:166)~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.reporters.ResultSaver. samplearched(ResultSaver.java:156)~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.ListenerNotifier.notifyListeners(ListenerNotifier.java:58)~[ApacheJMeter_core.jar:?] at org.apache.jmeter.threads.JMeterThread.notifyListeners(JMeterThread.java:1037)~[ApacheJMeter_core.jar:?] at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:591)~[ApacheJMeter_core.jar:?] at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501)~[ApacheJMeter_core.jar:?] at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268)~[ApacheJMeter_core.jar:?] at java.lang.Thread.run(Thread.java:748)~[?:1.8.0_202]
在查看结果树中的请求主体时,我发现cookie数据以以下方式发送:
X-CSRF-Token=xxxxx; JSESSIONID=xxxxx.xxxx; ROUTEID=.xxxx; JSESSIONIDSSO=xxxxx
字符串
现在,我手动检查了相同的交易。在这里,我观察到,作为请求头的一部分,Cookie以以下方式发送:
JSESSIONID=yyyyy.yyyy; X-CSRF-Token=xxxxx; JSESSIONID=xxxxx.xxxx; ajs_user_id=xxxxx; ajs_anonymous_id=xxxxx; style=default; ROUTEID=.xxxx; JSESSIONIDSSO=xxxxx
型
访问被拒绝的消息是因为JSession ID没有被发送而返回的吗?如果是,这是如何被发送的,因为我无法弄清楚它实际上是在哪里生成的?
1条答案
按热度按时间vddsk6oq1#
它看起来像一个文件权限问题,似乎你的用户没有访问的文件夹,你试图保存文件。
因此,要么修改对文件侦听器的保存响应,并将其配置为将文件保存到用户具有写入权限的位置,要么更改file system permissions以允许用户将文件写入当前文件夹。
更多信息:JMeter Performance Testing: Upload & Download Scenarios