接口测试 jmeter 生成 jtl 与 html 文件时如何删除之前的文件

初痕 · 2018年09月29日 · 最后由 Sutune 回复于 2018年09月30日 · 2145 次阅读

每次使用 jenkins 构建之后,jtl 与 html 都未做修改,为之前的文件。biuld.xml 可以生成带日期的文件但是 jenkins 在配置 htmlreport 时文件为绝对路径,没法配置到最新的日期文件。有人能解答下吗

最佳回复
初痕 回复

在 build.xml 补充下面两段代码

<delete file="${testpath}/${test}.html"/>
<delete file="${testpath}/${test}.jtl"/>

补充后,run 部分的配置如下:

<target name="run">
       <echo>funcMode = ${funcMode}</echo>

      <!-- 运行前删除旧的html和jtl-->
       <delete file="${testpath}/${test}.html"/>
       <delete file="${testpath}/${test}.jtl"/>

       <jmeter
           jmeterhome="${jmeter.home}"
           testplan ="${testpath}/${test}.jmx"
           resultlog="${testpath}/${test}.jtl">
       <!--
           <jvmarg value="-Xincgc"/>
           <jvmarg value="-Xmx128m"/>
           <jvmarg value="-Dproperty=value"/>
           <jmeterarg value="-qextra.properties"/>
       -->
           <!-- Force suitable defaults -->
           <property name="jmeter.save.saveservice.output_format" value="xml"/>
           <property name="jmeter.save.saveservice.assertion_results" value="all"/>
           <property name="jmeter.save.saveservice.bytes" value="true"/>
           <property name="file_format.testlog" value="${format}"/>
           <property name="jmeter.save.saveservice.response_data.on_error" value="${funcMode}"/>
       </jmeter>
   </target>

参考资料: Jmeter+Ant+Jenkins 接口自动化测试平台综合实践

共收到 4 条回复 时间 点赞

用 shell 直接修改就行了吧

biuld.xml 文件里看看生成 jtl、html 文件的地方,把日期部分去掉,位置大概是 jmeter 标签的 resultlog="XXXXXX.jtl",xslt 标签的 in="XXX.jtl",out="XXX.html" ,改成只和 jmx 名相关的比如 test.jmx->test.jtl->test.html,如果要按日期命名保存历史报告,就写个 shell 跑完的时候 copy 备份一下到指定目录或者也写到 build.xml 里

北溟 回复

有 build.xml 配置信息吗,这段修改的

初痕 回复

在 build.xml 补充下面两段代码

<delete file="${testpath}/${test}.html"/>
<delete file="${testpath}/${test}.jtl"/>

补充后,run 部分的配置如下:

<target name="run">
       <echo>funcMode = ${funcMode}</echo>

      <!-- 运行前删除旧的html和jtl-->
       <delete file="${testpath}/${test}.html"/>
       <delete file="${testpath}/${test}.jtl"/>

       <jmeter
           jmeterhome="${jmeter.home}"
           testplan ="${testpath}/${test}.jmx"
           resultlog="${testpath}/${test}.jtl">
       <!--
           <jvmarg value="-Xincgc"/>
           <jvmarg value="-Xmx128m"/>
           <jvmarg value="-Dproperty=value"/>
           <jmeterarg value="-qextra.properties"/>
       -->
           <!-- Force suitable defaults -->
           <property name="jmeter.save.saveservice.output_format" value="xml"/>
           <property name="jmeter.save.saveservice.assertion_results" value="all"/>
           <property name="jmeter.save.saveservice.bytes" value="true"/>
           <property name="file_format.testlog" value="${format}"/>
           <property name="jmeter.save.saveservice.response_data.on_error" value="${funcMode}"/>
       </jmeter>
   </target>

参考资料: Jmeter+Ant+Jenkins 接口自动化测试平台综合实践

初痕 关闭了讨论 10月11日 14:40
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册