接口测试平台:场景执行支持定时构建
Posted 软件测试君
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口测试平台:场景执行支持定时构建相关的知识,希望对你有一定的参考价值。
本文共738字 阅读约需1分钟
(后台回复“破解补丁”即可领取最新IDEA破解补丁)
前端的处理比较简单,在场景的配置里加一个“定时构建开关”和“cron表达式配置”
对应数据库新增字段 timing_task_switch和cron
关于Springboot接入可动态修改的定时任务可参考《》,下面开始讲解平台内接入的具体代码。
CollectionManageServiceImpl
@Override
public ResponseVo updateCollectionInfo(CollectionDetail collectionDetail) {
int i = apiTestCollectionMapper.updateCollection(collectionDetail);
// 定时任务处理
if (future != null){
future.cancel( true);
}
if (collectionDetail.getTimingTaskSwitch()){
String cron = collectionDetail.getCron();
if (!FormatValid.isCron(cron)){
return ResponseVo.isFalse( "cron表达式格式错误");
}
timingTaskStart(collectionDetail);
}
if (i != 1){
ResponseVo.isFalse( "更新异常,请联系开发人员");
}
return ResponseVo.success( "更新成功!");
}
timingTaskStart 和 MyRunnable
在修改集合配置内容的代码内加入定时任务处理的代码
private void timingTaskStart(CollectionDetail collectionDetail) {
future = threadPoolTaskScheduler.schedule(new MyRunnable(collectionDetail), new Trigger(){
@Override
public Date nextExecutionTime(TriggerContext triggerContext){
return new CronTrigger(collectionDetail.getCron()).nextExecutionTime(triggerContext);
}
});
}
private class MyRunnable implements Runnable {
private CollectionDetail collectionDetail;
public MyRunnable(CollectionDetail collectionDetail){
this.collectionDetail = collectionDetail;
}
@Override
public void run() {
log.info("正在进行定时构建");
// TODO: 定时脚本后续业务
}
}
然后只要在前端开启定时任务开关,就会根据cron表达式的规则去执行后续逻辑。
作者@简单随风
编辑@糖小幽
图片@简单随风
商务合作请联系微信:sofeicoffee
· 猜你喜欢的文章 ·
以上是关于接口测试平台:场景执行支持定时构建的主要内容,如果未能解决你的问题,请参考以下文章