20+最好的持续集成工具
Posted 程序员小捣
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20+最好的持续集成工具相关的知识,希望对你有一定的参考价值。
整理了20多款持续集成工具,这是作为软件测试人员需要了解的,也是在构建持续质量改进时,需要进行选型的基础设施工具。
什么是持续集成?
CI是一种提高代码质量的方法。它是一种软件工程方法,以共享的方式和环境合并所有开发人员的工作副本。
它将立即执行的更改隔离开来,并在将更改添加到更大的代码库时同时报告。
持续集成的主要目标是在发现代码库中的任何缺陷时提供快速反馈,并尽快纠正它。它使服务器上的测试过程自动化,并向用户提供自动报告。
常用的持续集成工具
下面是整理的一些常用开源和商业的持续集成工具列表:
-
Buildbot
-
ThoughtWorks
-
Urbancode deploy
-
Jenkins
-
Perforce
-
Bamboo
-
Hudson
-
TeamCity
-
Circle CI
-
Codeship
-
Cruise control
-
Go
-
Travis
-
Integrity
-
Strider
下面是对每个工具的简要介绍
Jenkins
Jenkins是一个跨平台的持续集成工具,可以持续构建和测试软件项目。Jenkins是基于Java编程语言开发的,开发人员可以很容易地将更改集成到项目中。它提供了构建管道和集成许多测试和部署方法的不同方法。
简单的安装和配置是Jenkins的特性,开发人员可以通过Jenkins将其部署到servlet容器中。富插件是另一个与几乎所有现有软件配置管理[SCM]或构建工具集成的特性。Jenkins很容易扩展和修改新的插件。
官网:https://jenkins.io/
Buildbot
Buildbot是基于Python开发的顶级工具、支持twisted框架。是一个开放源码框架,可以自动化复杂测试和应用程序部署的所有过程。
此工具之所以如此流行,是因为它支持跨不同平台的流程的分布式和并行执行。
简单地说,它是基于作业调度系统的,其中有可用的资源,它执行作业并生成测试报告。
此外,它的配置基于主从系统,其中主从系统监视更改并向用户或开发人员提供报告。这个配置通过另一个开源框架(如Twisted、Webkit、Firefox、Chromium)增强了它的完整性。
官网:http://buildbot.net/
ThoughtWorks
ThoughtWorks是提供CI功能的顶级公司。ThoughtWorks提供的集成工具至少每天集成一次,并且可以轻松快速地检测问题,减少了查找错误的回溯时间,开发人员可以利用这段时间设计任何特性。
ThoughtWorks增加了可视工具,这样用户就可以轻松地交流并看到正在发生的事情。它还只使用一个源存储库。它使部署过程自动化,并快速构建自我测试。
官网:https://www.thoughtworks.com/continuous-integration
Urbancode deploy
Urbancode deploy是IBM的一个多层应用程序模型或产品。它在敏捷环境中提供持续交付、自助服务、快速反馈和增量更新,并以一致的方式自动化应用程序部署。开发人员还可以回滚应用程序,跨服务器、层和组件组织更改。
此外还提供审计跟踪、版本控制等。在清晰可见性特性的帮助下,开发人员和用户可以看到部署了什么,在哪里部署,以及谁在进行部署。Urbancode很容易与中间件项目集成并提供服务器虚拟化。
Perforce Helix
Perforce Helix是一个统一的、开放的、灵活的CI平台,支持所有文档化的api,Helix强大的版本控制引擎特性可以管理和保护文件的任何类型和大小。它支持所有类型的应用程序,所以任何人都可以根据自己的需要使用。
所有的评审、评论、决策等都是通过通过Helix Swarm完成的,GitSwarm生态系统特性执行访问控制并同步主线存储库。它很容易检测到任何威胁并预测风险,并在几秒钟内找出该风险或威胁的影响。helix可基于免费、启动包或订阅获得。
官网:https://www.perforce.com/products/helix-core
Bamboo
Bamboo是一个CI构建服务器,可以自动构建、测试和发布。很容易与JIRA、Bitbucket集成。Bamboo支持任何类型的语言和技术,例如CodeDeply、Ducker、Maven、Git、SVN、Mercurial、Ant、AWS、Amazon S3 bucket。
此外Bamboo还识别了这些技术中的新分支,并自动应用于触发器和变量。部署和自动化非常快速和容易。
商业软件,但可以免费试用。
官网:https://www.atlassian.com/software/bamboo
TeamCity
TeamCity是一个支持许多特性的智能CI服务器。它提供了自动框架和配置执行代码覆盖、代码分析、避免代码重复等等。TeamCity自动存储或备份所有更改、失败和构建,以备将来参考。
TeamCity支持云集成,集成了Microsoft Azure、VMware等多种云技术。开发人员或用户可以根据需要扩展服务器,并使用开放api创建任何插件。它是一个免费的CI工具。
官网:https://www.jetbrains.com/teamcity/
Travis CI
Travis CI是一个流行的测试开源工具。开发人员或测试人员可以轻松地将Travis CI与GitHub同步并执行测试。对于每个规模的项目,它都有每种类型的私有存储库计划。它支持许多语言和平台,如Linux、Mac或ios。
在Travis中,用户可以在测试期间看到所有东西。有丰富的且优秀的api和命令行工具执行并行测试运行。支持拉请求和分支构建流。
官网:https://travis-ci.org/
Integrity
Integrity是一个基于R’uby开发的CI服务器,只与GitHub一起工作,用户可以通过使用镜像存储库使用其他具有完整性的SCM工具,这意味着GitHub镜像其他SCM,然后完整性就可以使用它。为此,用户必须不断更新镜像存储库。
每当用户提交代码时,都会构建并运行代码的完整性。然后,它生成报告并向用户提供通知。
官网:http://integrity.github.io/
Strider or Strider CD
Strider是一个基于Node.js + MongoDB开发的开源的CI/CD平台,在BSD许可下发布的。支持修改数据库模式和用户界面并注册HTTP路由的不同插件。
可扩展框架触发构建和部署。它集成了许多项目,如GitHub, BitBucket, Gitlab等。VCS分支、Github拉请求、协作器特性使其易于处理。
官网:http://strider-cd.github.io/
其他的这里就不一一列举出来了,大家有兴趣的话,可以根据上述的关键字进行搜索,获取到官网进行了解。
如果你已经工作但是经常觉得难点很多,觉得自己测试方面学的不够精想要继续学习的,想转行怕学不会的,都可以加入我们644956177,群内可领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!微信公众号【软件测试小dao】
燃烧秀发输出内容,如果有一丢丢收获,点个赞鼓励一下吧!
以上是关于20+最好的持续集成工具的主要内容,如果未能解决你的问题,请参考以下文章
《持续集成实践指南》第2章 持续集成环境搭建Jenkins+Gitlab+Gerrit