热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

预警:传统的QA岗位将被DevOps淘汰

导读在大多数机构或公司里,软件开发过程主要遵循一个或多个开发模型,例如瀑布模型或敏捷模型。在瀑布模型中,测试活动一般都在后期进行。软件开发完成后,缺陷被QA

导读 在大多数机构或公司里,软件开发过程主要遵循一个或多个开发模型,例如瀑布模型或敏捷模型。在瀑布模型中,测试活动一般都在后期进行。软件开发完成后,缺陷被QA团队找出,然后再被修复。后两个活动不断循环和重复,指导管理者认为软件可以被公开发布为止。

如果你是一名软件质量保障人员(QA),那么是时候去找一份新的工作了(或者get新技能准备升级转型)。绝大多数情况下,软件开发过程包括如下几个主要活动:

  • 进行需求分析
  • 创建软件产品的规格说明书
  • 构建软件
  • 软件(或服务)质量调查
  • 发现、修复缺陷
  • 部署软件到实际生产环境

在大多数机构或公司里,软件开发过程主要遵循一个或多个开发模型,例如瀑布模型或敏捷模型。在瀑布模型中,测试活动一般都在后期进行。软件开发完成后,缺陷被QA团队找出,然后再被修复。后两个活动不断循环和重复,指导管理者认为软件可以被公开发布为止。

在敏捷模型中,包括QA在内的个人和团队在一起紧密工作,在一种持续的基础上不断发布、更新软件,而在某个时间一起部署整个软件。DevOps,就像我们在之前的文章中已经提到过的,是下一代的敏捷开发模型。敏捷是一种在软件开发中不断思考的方式,而DevOps则更进一步发展,是实现组织内开发哲学的具体开发文化的变革。

而且这种实现方式消除了QA作为组织中一个单独实体的存在意义,将质量保障的工作分散给不同的开发团队,尽管许多人认为原来的质量保障的规则仍然需要通过这种或其它的方式存在。

过去对DevOps中QA的理解

其中一种常见的观点认为DevOps位于开发团队、运营团队、QA团队的中心(见上韦恩图):“一方面,QA团队和开发团队一起工作,尽量将他们的测试融入到系统的持续集成中。测试必须做到没有人力干预,独立产生他们自己的测试数据。另一方面,QA团队和运营团队一起合作完成监控工具,也可能一起不断对产品进行Smoke Test。有一种可能是运营团队在开发系统备份和恢复、部署回滚的脚本或者灾难恢复的脚本。”

在NeoTYS的Tim Hinds则从不同的角度看待这个问题,他认为“DevOps QA”的作用是预防缺陷的发生而不是检测缺陷:“QA在组织中担任非常关键的角色,因为他们有足够的能力和权限能够在系统正常工作时将其发布出去并且在发现系统不工作时将其回滚。这和10年前的QA团队的观念相比是非常不同的,当时认为QA团队的主要职责是发现缺陷。今天QA团队则被要求避免缺陷被暴露给公众。”

但是客观的说,上述的观点都是错误的。

为什么DevOps不需要(传统型的)QA

DevOps通常使用持续集成(CI)和持续交付(CD)。在持续集成中,开发人员利用各种持续集成工具来不断将代码整合到共享代码库中,甚至每天多次提交,而且DevOps依赖自动化来确保版本质量。如果想要进行持续角度,就不能有人工干预,这样才能确保在任何一个时间都可以发布代码库中的任何一段代码的任何一个版本。

基本上,传统的QA不可能在完整的持续集成/持续交付的环境中工作。在旧的结构中,软件产品的质量保障的责任是在QA的手里、而今天,它则是DevOps的开发文化和开发哲学的一部分——所有开发人员都有这个责任而非仅仅组织中的一个独立的团队拥有这个责任。

具体来说,DevOps需要使用诸如BUGtrack、JIRA和Github等产品和工具来不断汇总和报告软件中的错误和缺陷。Selenium、Cucumber、Junit、TestNG和JMeter等自动测试工具则用于管理、执行和度量功能测试等。

最后总结一下,如果在开发团队和运营团队中间还阻隔了一层人员,那么你就不能无缝执行持续集成和持续交付,也就不能进行DevOps。因此,要想正确的运行DevOps操作,则根本不能拥有(传统型的)QA团队。

QA的未来

那么对于QA工作者来说他们之后会怎么样呢?作为曾经美国最最幸福的工作之一的QA,随着越来越多的组织使用DevOps,传统型的QA工作者们的位置会变得越来越冗余。

根据美国劳工统计局(BLS)的报告,软件质量工程师是高新技术职业中增长速度预计将比平均水平慢的职业之一:

然而,美国劳工统计局的统计数字可能太泛化了因此劳工局还没有将DevOps认定为一个独立的职业:

作为证据,仅仅看一下Google趋势中搜索数据的相对数量就会发现“sqa jobs”的搜索数量正在缓慢下降然而“devops jobs”的搜索数量则在迅速增长:


本文转载自:http://www.linuxprobe.com/oa-to-devops.html

免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好:http://www.linuxprobe.com/


推荐阅读
  • 开发笔记:DevOps Gitlab环境部署
    本文由编程笔记#小编为大家整理,主要介绍了DevOpsGitlab环境部署相关的知识,希望对你有一定的参考价值。DevOps介绍 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • mongoDB介绍、安装、搭建简单的mongoDB服务器(一)
    相关网站1. http:www.mongodb.org 官网,可以下载安装程序,和doc,和驱动等。2. http:www.mongoing.com 国内官方网站,博客,问 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文介绍了使用CentOS7.0 U盘刻录工具进行安装的详细步骤,包括使用USBWriter工具刻录ISO文件到USB驱动器、格式化USB磁盘、设置启动顺序等。通过本文的指导,用户可以轻松地使用U盘安装CentOS7.0操作系统。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • HIVE 移动数据 (从表到分区表,分区表到子分区表)
    为什么80%的码农都做不了架构师?ExchangePartitionSkiptoendofmetadataCreatedbyNamitJain,lastmodi ... [详细]
  • GitLab 8.3.3 发布 开源代码管理
    2019独角兽企业重金招聘Python工程师标准GitLab8.3.3发布,包括GitLabCommunityEdition(CE)和EnterpriseEdi ... [详细]
author-avatar
mobiledu2502924733
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有