ant发邮件时遇到的问题

1. 在本地环境上搭建了jmeter+ant+jenkins环境,遇到邮件发不出的问题,解决办法如下:

在ant的安装包下的lib里加上四个jar包:mail-1.4.7.jar,commons-email-1.2.jar,activation.jar,ant-javamail.jar,见附件或者自行下载。

然后在build.xml中加上发邮件相关的:

 <target name="sendEmail">
        <mail 
           from="你的邮箱"
           tolist="你的邮箱"
           mailhost="smtp.qq.com"
           mailport="25"
           user="你的邮箱"
           password="你的邮箱密码"
           subject="${ReportName}${time}">
        <message>接口测试报告</message>  
        <attachments>
            <fileset dir="${jmeter.result.html.dir}">
                <include name="*${time}.html"/>
            </fileset>
        </attachments>
        </mail>  
</target>  

在执行的地方要加上:
 <target name="all">
        <antcall target="sendEmail" />    
 </target>

这样邮件就可以发出啦。

2. 发出邮件后,发现2个问题,一个问题是报告当中显示了:Date report: date not defined

另一个问题是展开与收缩的按钮没展示出来,显示破裂。

1》第一个问题解决方案是,在build.xml中加上一行(以下代码中带颜色的那行),加上后就会显示成时间,前提是在build.xml中要定义time:

<tstamp>
        <format property="time" pattern="yyyyMMddhhmm" />
</tstamp>

<target name="report">

<xslt

in="${jmeter.result.jtlName}"

out="${jmeter.result.htmlName}"

style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl" >

<param name="dateReport" expression="${time}"/>

</xslt>

</target>

2》第二个问题,是因为collapse.png和expand.png是存在本地的,所以在发出邮件后,拿不到图片,将这两张图片传到网上(qq空间,百度云等等都可以,或者放公司的图片服务器),将图片地址复制下来,到jmeter安装包的extras文件夹下,打开jmeter-results-detail-report_21.xsl进行编辑(编辑时发现无写权限,可以先用chmod命令给出写权限)。

改以下四个地方:

{
if(document.getElementById(details_id+"_image").src.match("这里改为collapse图片的地址"))
{
	document.getElementById(details_id+"_image").src = "这里改为expand图片的地址";
	expand(details_id);
	}
else
{
       document.getElementById(details_id+"_image").src = "这里改为collapse图片的地址";
       collapse(details_id);
			      }
<td align="center">
	<a href="">
	<xsl:attribute name="href"><xsl:text/>javascript:change(‘page_details_<xsl:value-of select="position()" />‘)</xsl:attribute>
	<img src="这里改为collapse图片的地址" alt="expand/collapse"><xsl:attribute name="id"><xsl:text/>page_details_<xsl:value-of select="position()" />_image</xsl:attribute></img>				      
	</a>
	</td>
时间: 2024-08-05 19:36:55

ant发邮件时遇到的问题的相关文章

用foxmail发邮件时出现 错误信息::ssl连接错误, errorCode: 5

用foxmail发邮件时出现 错误信息::ssl连接错误, errorCode: 5 解决办法:设置--账号设置--服务器--勾掉ssl复选框

SmtpClient发邮件时为什么用MailMessage.From而不用MailMessage.Sender

今天在看C#高级编程(第9版)的时候,在768页看到这样的一段代码 SmtpClient sc = new SmtpClient(); sc.Host = "邮箱服务器地址"; MailMessage mm = new MailMessage(); mm.Sender = new MailAddress("公司邮箱", "发件人"); mm.To.Add(new MailAddress("我的163邮箱", "接收人

ant发邮件

1.首先,在环境中导入activation.jar和mail.jar,commons-email-1.2.jar.如果用eclipse中的ANT,步骤如下: a) Window -> Preferences b) Ant -> Runtime c) Ant Home Entries -> “Add external JARs..."选择这几个jar包 d) apply and OK 2.示例build.xml <target name="sendReport&q

javax.mail 发邮件时添加附件

import java.util.Properties; import javax.mail.Authenticator; import javax.mail.BodyPart; import javax.mail.Message; import javax.mail.Multipart; import javax.mail.PasswordAuthentication; import javax.mail.Session; import javax.mail.Transport; import

python使用SMTP发邮件时使用Cc(抄送)和Bcc(密送)

SMTP发送邮件的时候,并没有特殊的通信语句告诉邮件服务器 谁是主送,谁是抄送/密送,这三个角色都是以同样的方式告诉邮件服务器的,然后重点在邮件内容里. 邮件内容分为头和体两部分(就像http),头部包含了各种meta信息,其中说明了谁要用to,谁要cc,谁要bcc. 一个典型的带to和bcc的邮件发送过程debug日志如下: send: 'ehlo E42.lan\r\n' reply: b'250-smtp.qq.com\r\n' reply: b'250-PIPELINING\r\n' r

[转载]发邮件组件Nodemailer——nodejs中间件系列

从零开始nodejs系列文章,将介绍如何利Javascript做为服务端脚本,通过Nodejs框架web开发.Nodejs框架是基于V8的引擎,是目前速度最快的Javascript引擎.chrome浏览器就基于V8,同时打开20-30个网页都很流畅.Nodejs标准的web开发框架Express,可以帮助我们迅速建立web站点,比起PHP的开发效率更高,而且学习曲线更低.非常适合小型网站,个性化网站,我们自己的Geek网站!! 关于作者 张丹(Conan), 程序员Java,R,PHP,Java

java windows自动化-mail自动发邮件

本文旨在让测试人员了解如何发邮件 发邮件的话,最简单的事是直接手动发邮件,但是在自动化测试中,应做到让机器或者代码来自动发送邮件,笔者大概了解以下几种方法,总有一款口味适合你:1java代码来做下面即为我的java代码package util;import javax.activation.DataHandler;import javax.activation.FileDataSource;import javax.mail.*;import javax.mail.internet.*;impo

python学习(5)--网易邮箱发邮件异常解决办法

在用python发邮件时,发现用网易邮箱作为发件人.会出现以下异常: smtplib.SMTPDataError: (554, b'DT:SPM 163 smtp12,EMCowxxn7yO5rI9bT0uuEg--.45230S2 1226142521,please see http://mail.163.com/help/help_spam_16.htm?ip=133.13.132.12&hostid=smtp12&time=1533242532') 通过查看上面的网址:http://

如何使cron任务出错时发邮件

如果设置了 MAILTO,cron就会将任务的标准输出和标准错误输出重定向到邮箱(即发送邮件).但如果只想接到错误报警邮件 -- 即任务正常执行时不发送,只在出错时发送 -- 应该怎么实现呢? 方法很简单,指定该任务的标准输出为 /dev/null 就可以了. [email protected] #m   h dom mon dow user  command 0   1    *     *     *     root   script.sh > /dev/null 这样,正常执行的时候,不