当前位置: 首页 > news >正文

网站开发与维护专业前景jsp网站建设项目

网站开发与维护专业前景,jsp网站建设项目,威海做网站哪家好,自己弄个网站要怎么弄前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取 需求背景: 现在用jenkins构建自动化测试(2个job),公司现将自动化纳入到发布系统 要求每次构建成功之后&am…

前言

嗨喽~大家好呀,这里是魔王呐 ❤ ~!

python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取

需求背景:

现在用jenkins构建自动化测试(2个job),公司现将自动化纳入到发布系统

要求每次构建成功之后,把测试结果发送给发布系统。这就需要先获取jenkins构建的结果,

如果构建结束,才能发送测试结果,否则就要等待jenkins构建结束。

理解回调函数:

像这样类似:男女朋友约会结束,男方要求女方到家后发1个信息,告诉他安全到家了。

就是python回调函数的应用场景。男女朋友约会结束是在主函数mainfunc中,女朋友回家这个动作由callback函数完成。

在mainfunc函数中,男朋友会接收女朋友发送已到家的消息,那怎么接收呢?

就是通过调用callback这个函数来获得女朋友到家的状态,这个过程就称之为回调函数

基本思路:

先用一个demo理清自己的思路,要做哪些事?共分几个步骤?

每个步骤要完成哪些事情?这些思路搞定之后,代码也就完成了。

这里的有一个技巧:先用randomint随机生成一个数字,用来代表jenkins的构建结果状态,而不是每次都真的去请求接口。因为这会增加验证结果的时间成本,分散精力。

最后整个流程顺下来,再把随机数部分替换为真正去请求jenkins接口,这会大大节约调试时间。

version1:

demo 理清思路,用简单的代码描述清楚自己想要实现的效果

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:926207505
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def mainfunc(func):''':param func: callback func Name:return:'''print('start build job')func()print('send report to ding wen qi')def callback():''':return: jenkins job build state'''print('jenkins is done')mainfunc(callback)

version2:

callback函数,获取job的构建状态。

该函数返回一个状态,true或false。

true表示job已经构建结束,false表示程序仍然在构建中

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:926207505
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def callback():''':return: jenkins job build state'''num = random.randint(1,10)#利用randint随机生成一个num 假装enkins是返回的构建结果。偶数认为已经构建结束,奇数认为仍在构建中print(num)if num % 2 != 0:#奇数print('kins is building job')return  {'buildState':False}else:#偶数print('jenkins is done')return {'buildState': True}

version3:

mainfunc接收callback返回的状态,

true:做send report操作,

false 再次调用func函数确认,直到结果是true

while True:flag = func()if flag :print('step3:send report to ding wen qi')break

结果:

1 step1:start build job
2 step2:jenkins is building job
3 step2:jenkins is building job
4 step2:jenkins is done
5 step3:send report to ding wen qi

version4:

加入等待时间,在询问jenkins是否构建结束之前,先等上10秒1钟(正常1个job至少构建1分钟以上,不停询问很浪费资源)

time.sleep(2)

完整的demo代码:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:926207505
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
import random
import timedef mainfunc(func):''':param func: callback func Name:return:'''print('step1:start build job')#根据callback返回的状态,决定是否进行下一步操作while True:flag = func()if flag :print('step3:send report')breakdef callback():''':return: jenkins job build state'''#jenkins构建job需要至少3分钟,所以每隔1分钟请求一次time.sleep(2)num = random.randint(1,100)#利用randint随机生成一个num 假装enkins是返回的构建结果。偶数认为已经构建结束,奇数认为仍在构建中# print(num)if num % 2 != 0:#奇数print('step2:jenkins is building job')return  Falseelse:#偶数print('step2:jenkins is done')return Truemainfunc(callback)

尾语

最后感谢你观看我的文章呐~本次航班到这里就结束啦 🛬

希望本篇文章有对你带来帮助 🎉,有学习到一点知识~

躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。

最后,宣传一下呀~👇👇👇更多源码、资料、素材、解答、交流皆点击下方名片获取呀👇👇

http://www.yayakq.cn/news/666454/

相关文章:

  • 网站做淘宝客网站网站代理怎么做的
  • 自适应网站如何做mip网页文化传媒公司能否建设经营网站
  • wordpress网站关键字百度?o法提交网站
  • win7做系统网站哪个好做宣传网站
  • 开网站程序网页建站要多久
  • 如何判断一个网站是php还是asp杭州汇咖网站建设有限公司怎么样
  • 网站做系统国外域名建站
  • 什么网站比较少人做微网站注册
  • 开个做网站要多少钱新网站建设银行提升转账额度
  • 成长厉程网站网站开发人员职能
  • 网站的建设主机费用好听的房地产公司名字
  • 网站美工工作流程宁波网站推广运营
  • 大连微网站开发wordpress 点击数筛选
  • 上海建工网站网页打不开视频
  • 软件综合课设做网站弄个直播平台大概要多少钱
  • 找装修公司上什么网站北京关键词优化平台
  • 白佛网站建设素材网站 模板
  • 西南交通建设集团有限公司网站个人网站设计毕业设计论文
  • 阳谷做网站德州网站建设
  • 网站建设对付客户成都网站建设排名
  • 做公众号推送的网站朝阳网站制作公司
  • 网站 推广 工具设计一个网站要多少钱
  • 四川法制建设网站自己做的网站打不开了
  • 沈阳网站设计培训班专业做家政网站
  • 广安市建设局新网站施工企业搭建的彩钢房如何做账务
  • wordpress首页屏蔽插件seo点击软件
  • 个人网站怎么申请学seo可以做网站吗
  • 美空间网站东营市两学一做考试网站
  • 宝安网站制作哪里好凡科建站官网登录
  • 怎么学会建自己网站的方法python爬虫