• 0
  • 0
分享

  我经常与一些客户打交道,他们的测试自动化要么刚刚开始,要么正在努力成长,而且他们常常都犯同样的致命错误。

  虽然他们可能了解测试自动化的基础知识,但是他们仍然认为脚本化测试的价值在于通过自动执行脚本而不是手工执行来节省时间。他们的理由是,如果自动化脚本执行速度比人类执行速度快,那么最大的效率收益应该来自于自动化运行时间最长的测试。

  如果执行时间是衡量价值的唯一时间,那么他们是对的。

  但是测试执行时间只是一个与时间相关的问题,还需要考虑编写自动化测试所需的时间,以及学习如何编写测试所需的时间。当团队将大型测试简化为更小、更短的测试时,他们更容易取得成功,你可以从这个非常识性的想法中获益。

  留时间学习

  蹒跚学步的孩子在学会站立之前先学会平衡,他们先站后走。程序员每次学习一门新的编程语言时都要会写“Helloworld”。

  学习自动化的团队可能同时通过几个学习曲线:编程语言、编程概念、测试自动化工具或框架、源代码管理,以及软件项目上的协作。

  每次您添加并行学习目标时,就需要花费更多的时间来熟练掌握。最近,当我负责的一家大型保险公司计划向测试自动化过渡时,我意识到仅仅是“条件”这个概念就可能需要人们几天或几周的时间来消化。

  回想大学时,我们花了整整一周的时间在条件反射上,现在很难相信。这个概念对我来说太基础了,看起来很简单,但对那些从未接触过它的人来说并不是这样。

  请记住,学习一个概念所花的时间比您想的要难得多。

  很多时候,公司希望人们在一周内学会编码并立即开始产生良好的测试自动化。

  对我来说这太疯狂了!为什么我要花一周的时间来学习大学中的“ifs”和“elses”,但对是一个没有背景的人来说,只要一个星期的时间于就要让他们学习进行基本编程所需的所有工具,简直是天方夜谭!

  这里的教训是:保持测试简短,以便您的员工被迫学习更少的概念,这将加快学习和工作效率。

  增长势头

  这是强大的测试自动化工作中最容易被忽视的因素。一个团队要么停滞不前要么动弹,如果前进,哪怕只有一点点,您的情况都会更好。

  为什么不先迈出一小步呢?从一个小测试开始,作为你的人写的第一个脚本,作为新功能的第一个小测试。比如在你的API测试中,一个简单的GET请求到一个新的端点等等。

  等待完美的工具选择、完美的用例、完美的资源集合是不会进步的。“完美”常常是“足够好”的敌人,“足够好”在前进、在一个方向上增加动力;一个“几乎正确”的小测试,即使是在一个稍微错误的方向上,也可以修改和纠正。

  让您的团队通过先编写小测试来增加动力、实现进展并获得胜利。

  建立心智分享

  当您的人员处理长时间运行测试用例时,这些测试用例可能包含更复杂的场景。当刚接触自动化的人们花费精力学习复杂的场景而不是创建测试自动化时,他们的大脑会因为有限的精力而波动。

  当您将您的思想集中在测试自动化的机制上时,您将更快地学习测试自动化;同样,当我们将注意力集中在复杂的业务逻辑时,您也将更快地学习复杂的业务逻辑。

  做测试自动化的团队应该首先关注学习测试自动化。当您学习自动化技能时,不要让复杂的业务逻辑支配您的思维,把那些长而复杂的测试留给那些更有技巧的人。

  我们不会要求新音乐家和其他人一起演奏,在舞台上表演,同时学习一首新曲子。我们不会要求一年级的学生做代数运算来计算出他们在排队等午餐时的变化。因此,让我们对那些测试自动化的新手进行同样的思考:让他们编写简短的测试。

  不要一次学习多种技能

  测试人员必须一次学习多种技能。测试用例越长,编写它的人就越有可能需要自动化工具中更复杂的功能。学习时,必须首先学习基础概念(语法),然后在这些基础上实现更复杂的功能,以学习更多高级技能(逻辑和修辞)。

  测试用例越长,您的新自动化人员就越有可能需要学习更多技能来完成测试,这减慢了进度,也延迟了人们在完成测试用例时所获得的精神满足。

  精神满足很重要,这就是许多程序员继续进行编程的原因,即使他们正在从事的工作很困难。因此,请缩短测试时间以减少自动化程序必须学习的技能。我们的确要学习很多技能,但不需要一次全部学习。

  自动化是一种软件开发活动

  测试自动化是一项软件开发活动,要学习很难编程,即使使用无代码工具,测试人员也可以迅速找到工具的局限性,并且必须学习更困难的概念。

  从小处开始,收获好处

  编写较小的测试有很多好处:更快地学习、更快地做出贡献、创造前进的动力并获得更频繁的反馈,也更有趣。

  因此,从小处着手,从微末之处开始。


作者:磊哥    

来源:http://www.51testing.com/html/25/n-7793125.html

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   与 iPhone 14 系列相比,iPhone 15 系列新增了大量值得升级的功能。苹果公司新推出的 iPhone 15 Pro 机型配备了创新的摄像头硬件,能够以可变焦距拍摄照片。另一方面,iPhone 15 机型配备了"灵动岛"(Dynamic Island)功能,使其更接近"Pro"机型。  最初有传言称,苹果将提高整个 iPhone 15 系列的价格。不过,与去年的 iPhone 14 Pro 机型相比,iPhone 15 Pro 在英国的价格反而下降了 100 多英镑。  今年的iPhone 15 和 iPhone 15 Plus 的起价与...
            0 0 1628
            分享
          •   今天,2024 年美国总统大选正式开始,爱荷华州将率先举行党团会议。生成式人工智能公司 OpenAI 决定利用今天来概述其计划如何防止一些团体利用其工具(如 ChatGPT 和 DALL-E)来创建和传播"深度伪造"和其他虚假信息,这些信息可能会被用来破坏美国总统大选,甚至是今年全球各国密集举行的大选。  OpenAI 在一篇博文中表示,它将确保其工具被用于"准确的投票信息、执行有节制的政策和提高透明度"。它补充道:  我们有一个专门负责选举工作的跨职能部门,汇集了我们的安全系统、威胁情报、法律、工程和政策团队的专业知识,以快速调查和解决潜在的滥用问...
            0 0 746
            分享
          • 读者提问:接口测试放在迭代中,流程怎么走呢?阿常回答:我从新项目接口、旧接口改造这两种情况分享下我的思路,供参考。1 新项目接口需求交底     ↓开发进行接口定义 & 测试编写用例     ↓开发更新swagger文档 & 通知测试     ↓测试完善接口用例     ↓测试执行接口测试     ↓测试编写测试报告     ↓接口用例收录至接口自动化用例集     ↓冒...
            0 0 1039
            分享
          • 在项目测试中,第一轮基本功能测试完成,第二轮交互功能测试完成,到了第三轮,就需要进行一些压力测试,性能测试等请求量比较大的场景测试,但是大家都很容易忽略一种测试方向,即异常测试。异常测试顾名思义,是手动制造一些异常条件,以此来模拟用户使用过程中碰到的一些突发情况。这些问题在短期使用可能不会遇到,但是随着软件使用时间越来越长,会有可能暴露,所以需要提前测试。设计异常测试用例时,需要关注哪些方向呢?我这边简单整理了一下:异常场景测试重点:1、关注异常情况下,终端界面提示信息合理性;2、关注异常场景下,是否出现脏数据;3、关注异常场景下,界面有合理错误提示,不会出现程序崩溃及异常;4、关注异常恢复后...
            1 1 14125
            分享
          • 摘要:我们思考,什么需要测试覆盖是“完整的”的方式,影响了我们如何测试和创建的测试用例。毕竟,一般情况下你只会为发生在你身上的情况设计测试——正常来讲,你也只能测试那些看得到的东西。是时候该脱下眼罩了。下面介绍如何能在你的产品中找到发生bug的地方,接着调整你的策略来精确地定位到它们。当我在一家保险公司工作时,我处理了大量的数据提取程序。在那段时间里,我从来没有见过一个需求文档来指明数据库关闭时应该做什么,即便大多数测试都是基于这些需求的。任何专家都可以使用需求文档并创建一个地图、要点或电子表格来构建一个“覆概率模型”。整个软件公司都存在可视化这些模型,当测试“覆盖”到这些功能时,把它们设计成...
            0 2 2037
            分享
      • 51testing软件测试圈微信