• 14
  • 14
分享

  DevOps 是一个完整的面向IT运维的工作流,以 IT 自动化以及持续集成(CI)、持续部署(CD)为基础,来优化产品开发、测试、系统运维等所有环节,DevOps的引入能对产品交付、测试、功能开发和维护起到意义深远的影响。从大趋势上分析,未来所有企业都将是IT软件企业,无论是制药业、服务业,还是金融业等行业,比如说大部分银行都意识到创新的伟大驱动力,都在往金融科技企业转型,终究会转型为软件企业,过去几年,DevOps正在成为软件企业主流模式,正在成为企业能否在行业内脱颖而出的关键性因素。在DevOps实践中,测试策略的优劣成为了往往能决定DevOps实践是否获得成功的必要条件,下面我们来谈谈DevOps 在测试策略中的实践。

  测试有很多种类,在持续测试中使用哪种测试,在团队融合的趋势下使用何种团队结构,使用什么样的测试架构,如何更好地推动验证效率,如何才能在知识不断更新的当下进行测试团队的建设,以及不同测试阶段需要使用什么样的策略,这些都是在实践中需要关注的。

  1、测试促进架构重构策略:根据测试的反馈不断优化系统架构

  诸如DevOps之类的实践,其中最重要的目标是,希望能够通过测试的反馈来促进系统架构的不断优化和重构。系统重构的基本前提和原则就是,在改变内部架构的同时不会对原有的外部关联和操作造成影响。在实际的项目实践中,这当然需要大量的测试来保证,只有通过测试用例验证,才能证明重构不会带来新的问题且原有的功能也都能正常工作,这些需要回归测试来进行保证。而完整的回归测试耗时、耗力,这也是导致开发人员对于修改畏手畏脚的重要原因之一。

  在推动自动化测试的早期,出现过以覆盖率提升为导向的现象,在这个时期,比起提升测试率本身,发现代码存在的问题及如何进行改进才是自动化测试所追求的。例如,通过对测试覆盖率的确认,可能会发现一些在逻辑上永远走不通的分支和语句。这种情况往往是无用代码或者潜藏的缺陷引起的,而无论是哪种情况都值得我们对类似代码进行确认和重新检査。

  而在推动自动化测试的中后期,自动化回归测试起到了非常重要的作用,稳定、快速并且保持实时更新的自动化回归测试的使用频度非常高,而它也能为开发团队带来信心,可以保证所有的修改会有它“兜底”,即使在复杂的大型项目中也不用再畏惧可能带来的影响。所以,在这种情况下,修改不是在问题出现的地方打“补丁”,而是真正从架构的角度对系统进行重构, 这样才能保证系统可持续发展。

  2.测试团队技能提升策略:逐步推动测试团队知识与技能的重建

  随着云计算、物联网、区块链、人工智能等的发展,以及敏捷、DevOps的推进,对测试人员的的要求也越来越高。基于这些挑战,建议采取如下4个步骤来推动测试团队知识与技能的重建。

  步骤1:保证敏捷团队的测试成员具有相关测试技能及自动化技能,建议所有测试团队成员都具有自动化相关的技能。

  步骤2:测试团队中具有编码基础的成员必须要具备更高级别的自动化技能,如白盒测试能力及开发能力。

  步骤3:确保团队中拥有所需的具有小众测试技能(如安全、非功能性因素、测试环境、 数据管理等)的成员。

  步骤4:测试专家具有人工智能相关技能,如深度学习概念、算法、神经网络、高级统计知识、数据优化等。

  3.业务需求优先策略:根据业务需求推行自动化测试

  自动化测试的实施是一个长期过程,其中推行的优先顺序非常重要。而关于如何确认推行的优先顺序,应该回归到DevOps实践的目的上。DevOps实践的目的是实现企业目标,在大部分情况下,盈利是企业最重要的目标,而关键业务则是企业实现盈利的重要保证。根据业务的重要性及相关需求设立优先顺序,优先保证关键业务的自动化测试,按照重要程度设定出短期、中期、长期对关键业务的应用覆盖,这样才能保证在修改问题时自动回归测试有效,以及增加新特性功能时能够实现敏捷实践所需要的速度,同时又不会在测试上因折中或让步而降低质量。

  4.测试覆盖程度提升策略:根据项目状况逐步提升测试覆盖率

  对于测试覆盖率的提升,一定要根据项目规模和架构特点,并结合业务变更程度,同时需要确认团队成员关于自动化测试用例及编写脚本的熟练程度等,对这些进行综合考量之后设立项目应用的测试覆盖率。一般按照如下步骤来实现测试覆盖率的提升。

  步骤1:根据优先顺序,首先实现关键业务的良好路径(聚焦于正常操作的功能测试)及糟糕路径(聚焦于异常操作或异常状况下的功能测试)的自动化测试。

  步骤2:对于大量的非关键业务,仍然按照优先顺序,首先实现非关键业务的良好路径(聚焦于正常操作的功能测试)的自动化测试。

  步骤3:对于大量的非关键业务,仍然按照优先顺序,首先实现非关键业务的糟糕路径(聚焦于异常操作或异常状况下的功能测试)的自动化测试。

  步骤4:实现自动回归测试并不断扩大回归测试所能包括的范围,而以上步骤同时也可以使用敏捷方式,小步快跑,最终实现整体的自动化回归测试。



作者:海底捞彭哥   

来源:51Testing软件测试网原创

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   身为测试工程师,总有一道绕不过去的坎就是定位bug,这其实是非常花费时间的。  也许有很多人不以为然,觉得无非就是发现bug后提交bug管理系统,描述操作步骤,预期结果和实际结果哪里不一致,然后继续测试。并不是说这样做的不对,只是说这样做的不够好,看似节约了测试时间,实则对于项目的进度没有起到应有的推动作用。  1、web前端  Web前端就是通常说的网页。互联网公司的前端一般包含如下内容:JavaScript、ActionScript、CSS、HTML(..ML)、HTML5、Flash、交互式设计、视觉设计。  web前端测试可能发现的问题——版面设计、交互设计、文字、性能、功能。  ...
            9 11 2043
            分享
          •   ChatGPT-4o 是 OpenAI 聊天机器人阵容的最新迭代产品,正如你所预料的那样,该公司对用户如何与聊天机器人互动有些担忧。鉴于最新版本的聊天机器人可以表现出类似人类的行为和反应,这家人工智能公司担心用户会对聊天机器人产生感情。  ChatGPT-4o 提供了更快的回复,甚至还有模仿人类语音的新语音功能,而这正是 OpenAI 所担心的。  这家市值数十亿美元的初创公司在继续完善其产品的同时,也不能不注意到 ChatGPT-4o 用户的一些行为模式。新聊天机器人的推出旨在提供一种类似于与人交谈的体验,但 OpenAI 似乎低估了用户与程序之间可能产生的情感联系。该公司在下文中重点介...
            0 0 426
            分享
          •   从比亚迪汽车官方公众号获悉,当地时间 7 月 23 日,比亚迪南非分公司(以下简称“比亚迪”)与南非知名巴士运营商金箭公司(Golden Arrow)达成具有里程碑意义的合作协议,成功斩获 120 台大巴订单,共同推动当地公共交通的电动化,这一协议标志着南非首支电动大巴车队的诞生。  据介绍,本次定制的 120 台电动大巴,专门针对南非的气候条件和交通需求进行优化设计,将加入金箭公司的现有大巴车队中。此次订购的 120 台电动大巴,车身长达 12.5 米,采用 65 座设计,均搭载了比亚迪自主研发的磷酸铁锂电池及六合一控制器。  首批电动大巴的交付工作预计将于今年 12 月正式启动,并计划...
            0 0 518
            分享
          •   最近一个学生也可以说是朋友,他遇到了一个让他困扰的职场难题,背景如下:  1)他们公司准备搞安全测试了,现在有人员培训的计划,所以全组有学习安全测试课程的安排。  2)他自己目前专职性能测试1年了,现在他领导有意想把他往安全测试的方向发展,但是他自己内心是排斥安全测试的,但是又不好拒绝领导的好意。  3)自己不想去安全,不是因为不感兴趣,而是因为目前阶段自己觉得性能还没完全摸清楚,现在又进入另外一个陌生的领域,心里没底。  4)且公司内部目前打算培养3个人做安全测试,他从性能部门转过去从零开始学习安全测试。  5)自己也不清楚安全测试的发展情况,非常头疼。目前就只想好好把性能搞好。  6)...
            0 1 887
            分享
          • 一、Python安装Python安装非常简单,可以自行百度。二、安装客户端库不同的编程语言选择不同的Selenium客户端库。对应我们Python语言来说,Selenium客户端库的安装非常简单,用 pip 命令即可。(1)win+R输入cmd打开 命令行程序,运行如下命令:pip install selenium(2)安装完成后输入如下命令查看是否安装成功:pip show selenium安装成功如下图:三、安装浏览器驱动浏览器驱动 和 浏览器 是对应的。 不同的浏览器,需要选择不同的浏览器驱动。常用的浏览器为Chrome和FireFox,此处使用C...
            0 0 1465
            分享
      • 51testing软件测试圈微信