请选择 进入手机版 | 继续访问电脑版

设为首页 收藏本站
思科社区 关注
思科社区

搜索
热搜: 邮件服务器
查看: 446|回复: 0

【原创】如何组合多种DevOps工具解决现实问题(1)

[复制链接]
发表于 2021-3-10 17:21:00 | 显示全部楼层 |阅读模式
引言:本文和您讨论在DevOps生命周期的每个阶段所涉及到的各种工具。您可以组合使用它们来解决各种现实问题。
在我们开始下面的讨论之前,首先通过一张总图来了解一下不同的工具,在DevOps生命周期中所处的位置。

DevOps生命周期阶段
我敢断言长期从事开发工作的您,一定对上述图片并不陌生。那么,这是否意味着您能够自如地使用各个阶段的各种工具,而不会碰到任何问题呢?
本文将通过引导您遍历DevOps生命周期中的各个阶段,并向您介绍如何综合使用多种DevOps工具,来解决各种现实问题。总的说来,我们在采用DevOps模式进行软件与应用程序开发时,通常会经历如下五个不同的阶段:
u  持续开发
u  持续测试
u  持续集成
u  持续部署
u  持续监控

1.持续开发
此阶段涉及到对于软件应用程序基本功能的计划与编码。虽然对于计划而言,并没有什么可选的工具,但是可用于代码维护的工具却有不少。
通常情况下,项目的实现目标是在计划阶段被确定的。而当项目组成员开始着手编写代码时,就进入了所谓的编码阶段。
程序代码可以用任何一种语言来编写,但是我们需要配备相应的版本控制工具予以维护。如今,在此类持续开发的DevOps工具中,最受欢迎的莫过于:GitSVNMercurialCVSJIRA了。
那么,您是否真正理解保留代码主要版本的重要性呢?让我们从如下两个方面来讨论它对于开发与运营的影响吧:
u  只有各种版本(特别是存储在中央存储库中)得到了管控,我们才能确保统一的可信代码来源。在此基础上,所有的开发人员都可以针对最新提交的代码开展协作。同时,在计划发布最新版本时,运营人员可以确保访问到一致的代码。
u  在发布过程中,如果出现各种意外,或是发现程序代码中存在着严重的缺陷,以及功能性故障,那么运营人员就能够从容且快速地回滚或恢复到,先前部署过的、已处于稳定状态的代码版本上。
目前,大家普遍认可的工具是GitGitHubhttps://dzone.com/articles/git-vs-github-demystifying-the-differences)。其中,Git允许开发人员在分布式的VCS(版本控制系统)上开展彼此协作。
另外,由于并不依赖于中心服务器,因此运营人员可以从远程位置,对存储库进行各种拉和推式的操作。此处用于维护代码的中央存储库,便是GitHub。可见,Git可谓世界领先的版本控制系统之一。

2.持续测试
众所周知,开发好的代码是不能够直接部署或发布到生产系统上的。我们应当充分测试代码的潜在错误和性能瓶颈。
通常,执行测试的方式有两种:效率低下的手动测试和高效快捷的自动化测试。如今业界普遍使用的便是自动化的方式,其中具有代表性的包括:SeleniumTestNGJUnit/NUnit等工具,它们可以自动执行各种用户定义的测试用例。下面我们来看看此类工具的基本特点:
u  自动化测试节省了手动执行各类测试的大量时间、精力和成本。
u  此外,生成报告是它们的一大优势。通过评估测试套件中有哪些测试用例失败了,运营人员能够更直观地执行各项任务。
u  此类测试也可以安排在预先指定的时刻被执行。
显然,我们应该在DevOps生命周期中不断尝试各种工具,形成持续测试阶段的习惯。如果您要问哪一款是我的最爱?我会告诉你:我会将它们组合起来使用。例如:我会用Selenium进行自动化测试,由TestNG生成报告,进而使用Jenkins触发持续集成。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5
平均得分0 (0 评价)
您需要登录后才可以回帖 思科 CCO 登录 | 思科 CCO 注册   

本版积分规则

Archiver | 思科社区  

GMT+8, 2021-4-13 15:47 , Processed in 0.078814 second(s), 28 queries .

京ICP备11014401号-17

© 2020 思科系统.版权所有 重要声明 | 保密声明 | 隐私权政策 | 商标 |

快速回复 返回顶部 返回列表