上次介绍了开源项目如何利用TravisCI进行持续集成,但是如果你的项目不是开源项目,用TravisPro就需要交钱了。
如果不想交钱,可以自己搭建CI环境,利用JenkinsCI进行持续集成。
首先,我们从Jenkins官方网站https://jenkins.io/下载最新的war包。
虽然Jenkins提供了Windows、Linux、OSX等各种安装程序,但是,这些安装程序都没有war包好使。
我从未见过Jenkins这样把Java包做得如此简单的项目。
只需要运行命令:Jenkins就启动成功了!它的war包自带Jetty服务器,剩下的工作我们全部在浏览器中进行。
第一次启动Jenkins时,出于
2024/1/4 19:56:14 272KB 使用Jenkins进行持续集成
1
IBM2010-2011软件创新论坛的相关演讲片子。
开发管理如何制定有效的管理过程?持续集成与自动化构建如何实现需求驱动的质量管理应用开发:统一的需求管理用模型驱动的开发方法建立敏捷快速的团队协作确保Java应用开发和良好代码分析保证应用开发的全面质量开发解决方案总览系统工程最佳实践经验,敏捷开发经验软件交付经验等。
2023/12/5 1:41:45 1.67MB 过程 变更 需求 质量
1
作者:[英]MattWynne/[挪]AslakHellesy出版社:人民邮电出版社原作名:TheCucumberBook:Behaviour-DrivenDevelopmentforTestersandDevelopers译者:许晓斌/王江平这是一本半技术书籍,虽然是测试使用,但阅读它实在也需要一定的代码基础,所以可见,测试的技术含量越来越高了:D由于本人使用Java,所以忽略了12章以后的内容,由于它所使用到的那些框架都是基于Ruby。
本书分为3部分:1.基础2.进阶3.应用在第一部分,基础篇中,介绍了Gherkin语法,Cucumber的产生背景与适用范围,以及常见问题与解答。
Cucumber是一种系统行为的描述文件,它是活文档,应该时刻描述当前系统的正确行为,并且能够自动测试。
这一特性事实上也要求在写Cu..ber文件时,务必做到用户精准,不要重复场景,用书上的话来讲,就是同一句话,对且只对应系统中的唯一的一个行为。
Cu..ber主要用于在团队中进行沟通,语言必须能通用,要通用就要求隐藏技术细节,以自然语言去描述系统的行为,最经典的场景如:Given...When...Then...给定一定场景,当做什么操作时,会产生什么样的结果。
表格的使用,Backgroud关键字都是为了让特性文件能更简洁,也更易懂和富有表现力。
第二部分进阶篇中,介绍了一些高级的功能,比如:钩子和标签钩子是指@Before@After这种加上实现方法之前,在测试开始时和结束后执行一些特定的操作。
Cu...ber的步骤是全局的,同理,@Be..这类钩子也是全局的,Cu...ber的全局是大有深意的,因为它认为,特性中的所有有用步骤,只能对应一种系统的行为。
若需要让其支持单个场景,则需要对在钩子后面加上标签的方式。
标签同钩子形式相同,可以在场景和特性关键词上加标签。
对于特性(Feature)的标签,会加在每个场景上。
Cu...ber可以对一组标签进行测试。
Cu...ber测试中(可以推而广之到任何测试中),凡是有数据库参与,需要在测试之前保证数据库是干净的,并且当前测试不会遗留下数据影响到下一个测试。
可以使用事务和Truncate的方式来保证这点,实际上,只要测试环节所需要的数据都由Given中提供,则不会有问题。
第三部分讲应用,基本上都是基于Ruby的一些库,但11章的命令行使用方式还是很有意义的,Cu...ber本身就是一个命令行工具,通过命令行,可以对特性文件进行一些过滤,对输出格式进行定制,以及集成到持续集成中。
命令行命令可以使用帮助:--help一些重要的命令:--tags过滤标签--lines指定行执行xxx.feature:45指定行的另一种形式--format格式化输出如果真能把Cucumber用起来,用严肃的态度对待每一个步骤,以测试驱动开发,做出来的项目质量应该能大上一个台阶的,是个很好的工具。
2023/11/3 8:45:35 6.7MB 软件测试
1
kohana框架中文文档(详细版),php轻量级框架Kohana是一个PHP5的柱架。
它采用∫模型、视图、控制器组成的结构模式。
它的目标是为∫安全,轻量级和容易使用。
Kohana用户手册QAPI于册Kohana论坛Github仓库项目页面官方邮件列表:捐助可发邮件至kohana刨librelist,com我该选择什么版本的Kohana?■Kohana2.x和3.x的区别以及你该如何选择正确的版本安装和配置Kohana3.0■从Github安装设置生产环境去除index.php如何使用控制器和视图如何创建和使用控制器如何创建和使用视图■如何绑定和设置数据到视图在视图中设置和使用全局数据制作一个模板驱动的网站创建一个模板继承模板控制器■基本页面控制器路由和请求操作Kohana中的IC:请求工丿路由基础忽略溢出的路由建立一个路由和控制器来处理国际化的静态页面多语言路由建立子目录路由■创建一个自定义的404页面■内部和外部的不同请求如何重定向用户请求如何测试路由反向路由和分页如何使用数据库模块■如何打开和配置数据库模块用查询生成器产生CRUD用査询生成器来高级查询■构建复杂的SELECT语句用查询生成器分页如何关闭一个数据库连接Cookies和Sessions■(okies和Sessions的使用如何使用HTML类③Kohanahtml类是一个HM助手。
它用来帮助创建HⅦ元素如何转换一个特殊字符为HIM实体■如何创建一个文本或图像链接如何在一个新窗口打开链接如何生成一个很难被其他人检测到的cmail地址如何创建一个email链接如何创建一个css链接如何创建一个脚本链接如何显示一张图片如何设置属性如何使用文本类Kohanatext类是一个文木助于。
它用来帮助处理字符串如何限制一个字符串的单词数如何限带一个字符中的字符数如何轮换两个或更多字符串如何产生一个随机字符串如何把字符串中多个反斜杠变成单个的反斜杠■如何从一个字符串中过滤掉特定的词语■如何查找相似词语如何自动把URLs转成链接如何自动为文本块增加段落标签如何把字节格式转换成人们常用的格式如何使用URL类ohanaUrl类是一个Url助手。
它用来帮助处理Urls如何获得你网站的基AUr1如何生成网站Ur1s如何生成查询字符串如何生成友好的rl标题字符申如何使用表单类③KohanaForm类是一个表单助于。
它用米帮助处理HML表单元素如何打开和关闭一个表单如何创建一个Input域如何创建一个隐藏域■如何创建一个密码域如何创建一个文件上传域■如何创建一个多选框如何创建一个单选框■如何创建一个文本区域如何创建一个选择域和下拉菜单■如何创建一个表单按钮如何创建表单标签表单验证如何使用日期类Kohanadate类是一个表单助手。
它用来帮助处理HTM.表单元素确定时区间的偏移(秒)获得一天,小时,分钟所包含的秒,分,小时获得所给时间处于上午还是下午转换一个非24小时数字为24小时数字■获得一个月有几天获得一年有几个月■获得起始年到终止年中的年份,并转换为数组获得两个时问戳之间的时差获得所给出时间和现在的差异转换UNIX和DOS的时间戳其他Kohana类在Kohana中使用数组(数组类)在Kohana中进行远程调用■使用Atom和RSSFeeds使用文件使用数字使用偏转器国际化设置和文件结构如何设置默认语言设置和检索语言字符中翻译消息多语言网站实例使用ORM对象建模■OM实例③oRM概述(经由jheathco维基百科仓库)OGithub.com/Kohana上的OM教程使用Sprig对象建模③Sprig概述(经由shadowhand仓库)■获得对象列表(finda1)■用Sprig用户模型来认证用Sprig用户模型使用sprig-auth来认证■验证一个Sprig模型通过AJAX来验证一个Sprig模型使用Je1ly对象建模■主要的Jelly文章http://jelly.jonathan-geiger.comJely认证@htp:/githuh.com/raeldc/jely-auth如何使用Auth模块继承Modeauthuser类在控制器中使用身份认证模块提示和技巧如何更好的在Kohana控制器中使用图片如何使用分页模块⑨用Capistrano部署Kohana应用如何使用Hudson安装持续集成■Kohana的命令行CLI用法
2023/10/1 22:01:01 3.81MB php 手册
1
circleci-hello-world-nodejs(活泼的名字,circleci-hello-world-nodejs!)一个简单的node.js“helloworld”应用程序,用于演示Circle-CI上的持续集成和部署(CI/CD)!看看在哪里使用GOTO:::winking_face:
1
唯品会现状唯品会PaaS功能点唯品会PaaS选型唯品会PaaS架构唯品会构建部署流程唯品会PaaS定制遇到的问题唯品会PaaS使用情况
2023/9/23 15:06:11 925KB docker
1
无加密版本。
如网盘失效请评论说明。
我会补新的网盘。
您可以再次下载。
不需要积分的本课程设计的技术及工具如下:后台服务架构:dubbo、spring-boot、springmvc、spring-security-oauth2、spring-ldap、spring-data-jpa等项目管理工具:maven、nexus版本管理工具:gitlab、git数据库:mysql、mongodb运维监控工具:Open-Falcon日志管理工具:ELK持续集成工具:Jenkins协作工具:confluence缓存:redis消息两头件:kafka、rocketmqweb服务器:tomcat、nginx容器引擎:docker
2023/2/21 21:39:24 130B jenkins elk kafka
1
自从参加了4月份的QCon以后,持续集成的念头不断在脑海中浮现。
时隔四个月之后,终于有了实践的机会。
在此,首先应该感谢头儿们的大力支持。
记得参加Scrum的培训时,最开始提到的一个障碍就是来自上层。
因为上层希望看到的是实实在在的成果,如果现有的开发模式和质量管理系统已经有了比较好的效果,他们就不太愿意尝试新的模式。
而这次正是有了头儿们的理解和支持,我才能放开手脚、“无所顾忌”地尝试这些新手段。
其次,应该感谢我的天才同事们。
因为,每次即使小小的改动都会给他们的开发带来一些不便,但是他们都会毫无抱怨地接受,并且总能给出一些我意想不到的想法,帮助我不断地改善这个系统。
虽然当前的CI系统还存在诸多问题
2023/2/21 10:54:38 1.12MB 持续集成之路—Maven
1
IceCI:IceCI是一个从头开始为Kubernetes设计的持续集成零碎
2023/2/8 20:08:48 258KB kubernetes devops continuous-integration ci
1
千万级企业自动化运维高端课程,可以肯定的说可以作为运维人员必修的第二大方向的课程。
课程以Python为主线进行企业级项目和服务运维的全程实战课程,入门学习+运维管理进阶+自动化运维+高端企业级自动化项目实战,四大维度十二大章节进行详解。
课程旨在将传统运维技术升格到Python自动化与大数据运维的级别,实现企业的大数据使用,为企业提供大数据级别的统计,实现企业级持续集成与企业级监控等自动化企业管理平台,是真正的新时代运维工程师的必修课程。
1
共 28 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡