如何在NonGUI模式下从JMeter日志文件中排除不必要的请求

时间:2018-02-15 15:14:53

标签: jmeter jmeter-4.0

我正在运行JMeter 4.0 r1823414。

在我的测试套件中,我有以下结构:

enter image description here

当我使用以下命令在非gui模式下运行此TestPlan时:

@Echo Off Set "Inp=example.csv" Set "Out=example2.csv" If Not Exist "%Inp%" Exit /B Set "Now=%TIME%" SetLocal EnableDelayedExpansion ( For /F "UseBackQ Tokens=3 Delims=," %%A In ("%Inp%") Do (Echo %%~A Set /A "Repeat=%%~A-((100%Now:~,2%%%100)*60*60)+(100%Now:~3,2%%%100)*60)" Echo !Repeat!))>>"%Out%" EndLocal

我得到一个包含所有调试步骤和请求的CSV文件(例如身份验证) 我只对查询请求感兴趣 如何从CSV文件中排除所有请求,只留下查询请求?

3 个答案:

答案 0 :(得分:1)

我弄清楚我做错了什么。 通过为-l提供文件路径,我为整个测试会话创建了一个监听器:

  

12.2 non-GUI (batch) test runs
  在非GUI模式下运行时,-l标志可用于为测试运行创建顶级侦听器。这是测试计划中定义的任何监听器的补充。此侦听器的配置由文件jmeter.properties中的条目控制,如上一节中所述。

如果我运行jmeter -n -t $testplan,我只会从我指定的监听器中获取日志

答案 1 :(得分:0)

这与Filter Results Tool jmeter插件完全匹配

  

它还应该过滤不是对应用程序的调用但是将采样器或中间计算采样器调试为beanhell采样器的查询。

在您的情况下,您搜索查询:

 jmeter\lib\ext\FilterResults.bat --output-file filteredout.csv --input-file inputfile.jtl --include-label-regex true --include-labels "Query.*"

答案 2 :(得分:0)

如果您想从CSV中排除,请按照@ ser7294900答案转到Filter Results Tool

但是如果您只想在HTML报告中排除:

  • 首先在您的交易控制器上应用命名约定,方法是右键单击它们并选择“应用命名约定”

Apply Naming Convention   - 其次,使用菜单帮助> “导出报告的事务”并在user.properties中替换它

Export Transactions for report