【JMeter】如何使用ant自动生成测试报告并发送邮件

一、下载并搭建ant环境(使用Ant前提条件,系统中已经安装JDK)

1、下载 ant:进入官网,选择 Download 下的 Binary Distributions ,然后选择对应版本(1.10.2 .zip archive 对应jdk8,1.9.10 .zip archive 对应jdk7)下载,然后直接解压

2、配置Ant环境变量:右键计算机属性->高级系统设置->系统属性->高级->环境变量->添加如下的系统变量:
变量名:【ANT_HOME】,变量值:【D:\Program Files\ant\apache-ant-1.9.0】(ANT安装路径)
变量名:【PATH】,变量值:【 ;%ANT_HOME%bin;】

3、查看是否配置成功
【JMeter】如何使用ant自动生成测试报告并发送邮件_第1张图片
如图表示成功

可参考这篇博客

二、整理jar包

1、在 jmeter 的 .\JMeter\apache-jmeter-3.2\Extras 目录下找到 ant-jmeter-1.1.1.jar 文件,将它复制到 ant 的 \lib 目录下

2、在网站上下载commons-email.jar包,然后放在 ant 的 \lib 目录下

3、在网站上下载activation-1.1.1.jar包,然后放在 ant 的 \lib 目录下

4、在网站上下载javax.mail.jar包,然后放在 ant 的 \lib 目录下

三、修改 jmeter 的配置文件

打开 jmeter 的 bin 目录,找到 jmeter 的配置文件(jmeter.properties),做如下修改:把输出的默认存储模式改为xml,也就是把 jmeter.save.saveservices .output_format = csv 改为 jmeter.save.saveservices .output_format = xml

四、编写 build.xml文件:

脚本流程:执行测试脚本 ——> 生成测试报告(xml)——> 自动发送邮件
在 .\JMeter\apache-jmeter-3.2\extras 这个目录下有 build.xml 文件,但是需要我们进行调整,才能定制信息



    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

    
        
        
        
    
       
    
    
        执行接口自动化测试用例
        
        
            
             
        
    
    
    
    
        
            
    
    
    
        生成接口自动化测试报告
             
            
                   
                  
               
                  
              
            
            
            
    
    
    
        发送测试报告
            
            
            
                
                    
                        
                        
                        
                    
                
                
                
                ${message}
                
            
    


五、执行

cmd 中进入build.xml存放的路径,然后输入ant回车执行即可,完成之后可以在build.xml中设置的路径中找到html格式的测试报告

六、问题解决

1、运行报错:fileset doesn't support the nested "includes" element

【JMeter】如何使用ant自动生成测试报告并发送邮件_第2张图片
最开始是这样写的,但老是报错

后来改成这个样子就好了

2、发送邮件报错:java.lang.ClassNotFoundException: javax.mail.internet.MimeMessage

报这个错可能就是因为缺少第二步里面的一些jar包

3、html测试报告左上角显示“dateReport:date not defined”

【JMeter】如何使用ant自动生成测试报告并发送邮件_第3张图片
自己定义一个时间就好

4、邮件老是报错: Failed to send email: Unknown SMTP host: {mail_host}

百度了老半天,也没找到为什么,又是ping,又是tracert的,都没有问题,最后发现,是我少写了一个“$”符,导致取不到配置信息:
【JMeter】如何使用ant自动生成测试报告并发送邮件_第4张图片
红框是报错地

七、如何把ant+jmeter与jenkins结合起来

有两种方法:
方法一:
构建项目后,在构建步骤里选择execute Windows batch ..:然后在此处填写cmd里实际使用的命令即可
构建后操作选择publish html reports:目录记得用/。Index page处使用正则表达式:*.html(获取所有html文件)
然后执行即可

方法二:
构建项目后,在构建步骤里选择invoke ant——>ant version:default,build file:存放build.xml文件的路径
然后执行即可

八、在jenkins里如何查看性能测试报告

在构建后步骤里选择publish performance test result report:数据路径用正则表示:*/.jtl(如果写具体的路径,可能会报拒绝访问的错误)

九、参考链接

https://blog.csdn.net/sh169/article/details/73033426

你可能感兴趣的:(【JMeter】如何使用ant自动生成测试报告并发送邮件)