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/

其他的这里就不一一列举出来了,大家有兴趣的话,可以根据上述的关键字进行搜索,获取到官网进行了解。

大数据测试过程、策略及挑战

大数据测试之ETL测试入门

软件测试工程师又一大挑战:大数据测试

jmeter入门系列v1.0电子版

Python3接口测试pdf+源码免费领

快学Python3系列

原文发布于微信公众号 - 开源优测(DeepTest)

原文发表时间:2019-03-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券