【发布时间】:2020-06-14 23:51:16
【问题描述】:
在 MacOS/Linux 上运行 JMeter 5.3。我正在尝试模仿网页的获取。页面的 HTML 引用了 3 个静态资源(2 个 JS 文件和 1 个 CSS 文件)。 CSS 引用了 3 个静态资源(2 个字体文件和 1 个图像)。
测试计划相当简单。它有一个事务控制器(SML 主页),而后者又具有一个 HTTP 请求采样器(获取 SML HTML 和嵌入式资产)和一个 If 控制器(条件获取)。 If 控制器有一个 Blazemeter 并行控制器或采样器(获取 CSS 资产)。下图显示两者都已启用,但其中任何一个都很好(因为它们都应该并行获取相同的 3 个资产)。
我有以下问题
并非JMeter HTTP Request 中提到的所有参数都显示在 HTTP 请求采样器的基本或高级选项卡上。还有其他方法可以设置这些吗?
在日志中我看到
o.a.j.p.h.s.HTTPSamplerBase: Parser for text/css is org.apache.jmeter.protocol.http.parser.CssParser。从CssParser的文档中我看到CSS Parser used to extract from CSS files external urls。 JMeter 是否应该使用 CssParser 来获取依赖项——即图像和字体文件?如果这可行,那么测试计划可以进一步简化。-
因为 CSS 引用的资产不会自动拉出,所以我使用 Blazemeter 并行控制器在主样本 (HTML) 和子样本(2 个 JS 文件和 1 个 CSS 文件)以 200 状态获取后获取这些资产。在运行 Blazemeter (v0.9) Parallel Connector 时,我注意到相当多的连接问题(如下所述)。我已经尝试过并行控制器和并行采样器。 Sampler 的连接问题比 Controller 少。
- 响应代码:非 HTTP 响应代码:java.net.SocketException 响应消息:非 HTTP 响应消息:套接字关闭
- 响应代码:非 HTTP 响应代码:java.lang.IllegalStateException 响应消息:非 HTTP 响应消息:连接池关闭
- 响应代码:非 HTTP 响应代码:javax.net.ssl.SSLProtocolException 响应消息:非 HTTP 响应消息:以非数据状态接收的数据:6
- 响应代码:非 HTTP 响应代码:org.apache.http.impl.execchain.RequestAbortedException 响应消息:非 HTTP 响应消息:请求执行失败
- 响应代码:非 HTTP 响应代码:java.io.InterruptedIOException 响应消息:非 HTTP 响应消息:连接已关闭
【问题讨论】:
标签: jmeter jmeter-plugins blazemeter