自动化测试高手课
柳胜
原甲骨文高级开发经理
16849 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 34 讲
开篇词 (1讲)
自动化测试高手课
15
15
1.0x
00:00/00:00
登录|注册

03|工具选择:什么工具框架值得用?

你好,我是柳胜。
工具选型评选会你应该不陌生,无论你是作为评审者,还是方案建议人。不过常常出现的场景就是,方案建议人讲了一通新工具 A 如何优秀强大,从问题分析到方案解决一应俱全。但参会专家并不是全都熟悉这个新工具,就会问出一堆类似“为什么你不用工具 B”的问题。
结果也可想而知,懂 A 的不懂 B,懂 B 的不懂 C,懂 C 的不懂 A,最后评审会咋决策?只好陷入一个依靠个人影响力来决策的模式。要破除这种死循环,就要找到一个量化模型。在我看来,量化数据才是团队有效交流的手段,也是团队达成共识的基础。
有了这样的模型,好处多多。评审阶段,可以更科学地预估某个工具的能力和风险;工具投入使用后,模型依旧能帮你持续观测,检验这个工具是否带来了预期价值。
今天我会带你一起推演出这个模型。学会推演方法,远比套用“模型”更重要。

自动化测试案例的成本

在开始量化评估之前,我们先回顾一下前面学过的 ROI 模型。
通过这个模型,我们得到一个重要结论:一个自动化测试案例的开发工作量,在给定条件下,什么经验的工程师用什么工具,需要多长时间完成,这是可以估算的定值。但维护工作量包含了多种可变因素,是自动化测试项目的风险所在。
今天我们聚焦公式里的分母,也就是开发成本 d 和维护成本 m。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文深入探讨了如何选择适合的自动化测试工具框架,并强调了量化模型对于选择的重要性。作者首先讨论了自动化测试案例的成本,包括开发成本和维护成本,并介绍了五种自动化测试案例生成方法。文章强调了选择合适工具框架对于自动化测试架构设计的重要性,通过开发成本和维护成本两个因子影响自动化测试ROI。作者提出了工具四维成熟度表的概念,用以量化工具框架的选择。总结中强调了工具和框架的评估需要实时观测,及时止损,让ROI持续提升。整体而言,本文为读者提供了选择合适工具框架的参考依据,并强调了量化模型对于团队有效交流和共识达成的重要性。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《自动化测试高手课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(13)

  • 最新
  • 精选
  • swordman
    几年前,我所在的研发团队,在移动端产品中,在Appium框架上实现了关键字驱动,只是我们没有用表格,用的是YAML脚本。正因为编辑脚本和维护关键字不是同一批人,沟通与维护工作量较大,导致后来测试用例没有形成规模,这个方案没有达到预期的效果。 老师提到的思考题,我觉得优点是团队可以用Python快速开发出测试用例,缺点是没有明确这个Python框架需要满足什么测试需求,比如selenium和appium都支持Python,可以满足UI层自动化测试需求;但如果项目中包含复杂的业务逻辑处理和算法处理,需要支持单元测试的Mock,可能这个Python框架,就不一定适合了。

    作者回复: 你的名字很cool!思考得也很到位!无论什么工作,分工越多,越会增加团队内hand over信息的次数,这个协作和沟通的成本让团队失去活力,整天忙着开会,做报告。高效团队最关键的是人的热情和成就感!

    2022-03-26
    7
  • 太匆匆
    录制回放和关键字驱动目前仍然是使用最频繁的方法,模块化开发感觉是关键字驱动的更高的阶段,BDD不仅限于测试了。很期待第五讲了

    作者回复: 总结的不错!

    2022-03-25
    2
    5
  • 北冥
    老师我有个疑问: “AI‘落地’的定义是,它的形式是产品,而不是个人业余的项目或者一段开源代码”。 意思是 AI 是专业定制化的解决某些问题,做不到可以提供普适性很强的共性解决方案的意思吗? 怎么理解 “它的形式是产品”呢

    作者回复: 你理解的没错。老子说过一句话“以正治国,以奇用兵”,换到测试领域里,测试的主体设计方法论,需要确定的策略和框架,比如ROI思想,分层策略,冒烟测试,覆盖率等等,这是“正”;在某一个具体的问题上,可能用AI,混沌测试等等,可能会取到意想不到的效果,这是“奇”。 为什么说AI在软件测试领域只能算是奇兵呢?软件本身是确定方法论构建出来的,从代码到模块到服务,中间都是有逻辑的,它是一个我们可以读懂的“白盒子”,只是软件越来越复杂后,这个“白盒子”的复杂度在提高。AI在这里应用,不管是AI设计测试案例,AI诊断Bug,本质上是一种选择模型和计算能力,结果是可以“解释”的。 真正的AI是什么呢?是针对人类大脑思维的“黑盒子”,比如人的识别能力,兴趣偏好,这些AI的场景,它关注输入和输出,而不需要知道内部的逻辑,它的输出是”不能解释“的。 所以,“AI”在测试领域里的应用非常具体,特别的点。而不能成为一个面。

    2022-06-25
    2
    2
  • Evan
    做测试三年,刚做测试开发一年。以个人发展的角度来说,更倾向于去学习不同语言的框架。 目前用过python+selenium和Python+request做UI及接口自动化(模块化),也在学习用JS框架的cypress做E2E的UI自动化。虽然只是刚刚开始接触JS,但是当自动化运行起来的瞬间,带来的成就感是无可比拟的,趁年轻应该多学习。

    作者回复: 趁着年轻多学习,终身学习的态度,这是硬道理!看得多了,学得多了,自然就会上层次,信手拈来,庖丁解牛,四两拨千金。

    2022-07-06归属地:日本
  • 随片
    在一定程度上是遵循了ROI公式,但只在比较单一的方面。Python对于项目是否适用?该工具的更新是否活跃等都是需要考虑。对Python熟悉就选择Python框架,对于开发成本和维护成本都有减少,但也要根据总成本来确定。 我本身懂点Python,希望用Python进行api接口的自动化测试,完成接口自动化的同时,提高自己的Python熟练度,但是项目运行基本使用公司自研的工具(类jmeter),两者不兼容,对此也很烦躁。

    作者回复: 非常有洞见的回答!

    2022-07-04
  • 萧瑟
    老师讲的太好了! 以前每次做自动化前,都不会考虑 ROI 什么的,团队熟悉什么语言,就用什么语言的框架,简单粗暴。

    作者回复: 有理有据干工作。只要开始思考,就是走向成功一大步!

    2022-05-05
  • 清风明月
    老师讲的很好,学到了很多! 现在就缺这种很实用,而且总结性很好的文章! 需要好好的看几遍,很期待接下来的课程!

    作者回复: 很高兴给你带来收获!

    2022-03-30
  • 清风明月
    老师讲的很好,学到了很多!

    作者回复: 有什么心得,可以分享一下哈。

    2022-03-30
  • IT蜗壳-Tango
    打卡

    编辑回复: 都追到新一节课了,赞,期待周一更新吧,后续更有料哦~

    2022-03-25
  • ifelse
    学习打卡
    2024-02-08归属地:浙江
收起评论
显示
设置
留言
13
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部