当前位置:   article > 正文

java接口自动化框架_java接口自动化框架优化(二)

java 关联接口自动化测试框架

项目路径说明

内容优化

优化内容

1.自动生成的测试报告集成至项目中,可直接通过项目访问测试报告(之前生成测试报告位于项目外,需要手动打开) 优化效果:

2.增加邮件发送功能(定时任务触发用例后,生成的测试报告通过邮件发送)

部分代码

public class SendEmail {

private String smtpHost; // 邮件服务器地址

private String sendUserName; // 发件人的用户名

private String sendUserPass; // 发件人密码

private MimeMessage message; // 邮件对象

private Properties properties = new Properties();

private Session session;

private Multipart mp ;// 附件添加的组件

private List files = new LinkedList();// 存放附件文件

private SendEmail(String smtpHost, String sendUserName, String sendUserPass, String to, String cc, String mailSubject, String mailBody,

List attachments) {

this.smtpHost = smtpHost;

this.sendUserName = sendUserName;

this.sendUserPass = sendUserPass;

init();

setFrom(sendUserName);

setTo(to);

setCC(cc);

setSubject(mailSubject);

setBody(mailBody);

if (attachments != null) {

for (String attachment : attachments) {

addFileAffix(attachment);

}

}

send();

}

/**

* 邮件实体

*

* @param smtpHost

* 邮件服务器地址

* @param sendUserName

* 发件邮件账号

* @param sendUserPass

* 邮箱的SMTP生成密码

* @param to

* 收件人,多个邮箱地址以半角逗号分隔

* @param cc

* 抄送,多个邮箱地址以半角逗号分隔

* @param mailSubject

* 邮件主题

* @param mailBody

* 邮件正文

* @param attachments

* 附件路径

* @return

*/

public static SendEmail entity(String smtpHost, String sendUserName, String sendUserPass, String to, String cc, String mailSubject, String mailBody,

List attachments) {

return new SendEmail(smtpHost, sendUserName, sendUserPass, to, cc, mailSubject, mailBody, attachments);

}

配置文件配置邮箱服务器信息

配置文件定时任务触发testNG套件用例

#定时任务配置

#'index.job': '0 0 0 * * ?'

#'thirdOrderCancel.job': '0 0/60 * * * ?'

'autoRefund.job': '0 0/60 * * * ?'

#'deleteCosUploadImg.job': '0 0 * * * ?'

定时任务触发类

//通过配置文件执行定时任务运行testng.xml文件

@Service

public class TimeTask {

/**

* 邮箱服务器

*/

@Value("${spring.mail.host}")

private String host;

/**

* 发邮件的人的账户

*/

@Value("${spring.mail.username}")

private String userName;

/**

* 发邮件的人的密码

*/

@Value("${spring.mail.password}")

private String password;

/**

* 发给谁

*/

@Value("${test.mail.send}")

private String toSend;

/**

* 抄送人

*/

@Value("${test.mail.cc}")

private String cc;

@Scheduled(cron = "${autoRefund.job}")

public void runTest() throws Exception {

System.out.println("----------开始执行测试用例----------");

TestNG testNG = new TestNG();

List suites = new ArrayList();

suites.add("src\\main\\resources\\testNG.xml");

testNG.setTestSuites(suites);

testNG.run();

//打包成zip包位置

String targetPath = "D:\\";

//项目静态文件路径

SendEmail.compressedFile("F:\\00_3IdeaProjects\\HttpClientUtils\\HttpClient\\src\\main\\resources\\static", targetPath);

List fileList = new ArrayList<>();

fileList.add("D:\\static.zip");

SendEmail.entity(host, userName, password, toSend, cc, "test", "1234123412", fileList);

}

}

实际效果

控制台输出信息

通过控制台日志可以看到生成的测试报告static被压缩成.zip包从一个邮件发送至另一个邮箱。

收件邮箱成功收到发送的测试报告数据下载打开测试报告数据

打开接收的测试报告,展示正常

由于近期比较忙,优化未完待续更新...

项目源码传送门:https://github.com/rootczy/Java-elf

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/456074
推荐阅读
相关标签
  

闽ICP备14008679号