前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >接口测试平台:场景执行支持定时构建

接口测试平台:场景执行支持定时构建

作者头像
软件测试君
发布2020-05-13 14:20:00
4390
发布2020-05-13 14:20:00
举报
文章被收录于专栏:测试人生测试人生

本文共738字 阅读约需1分钟

前端的处理比较简单,在场景的配置里加一个“定时构建开关”和“cron表达式配置”

对应数据库新增字段 timing_task_switch和cron

关于Springboot接入可动态修改的定时任务可参考《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表达式的规则去执行后续逻辑。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 软件测试君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • CollectionManageServiceImpl
  • timingTaskStart 和 MyRunnable
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档