为何要做自动化测试?一篇解析,“我“的进阶之道...
目录:导读
前言
聊聊为什么要做自动化测试,这也是很多新手没怎么考虑过的问题
新手典型的一个技术认知就是,公司要给时间给资源让自己来学习某个技术,否则只做自己岗位职责范围内的事情。以自动化测试来说,很多新手总认为是公司没有让自己做,所以自己不去做或者不学习。
等到公司开始认识到需要自动化测试来提高效率的时候,又往往陷入技术纠结的状态。用什么框架,开源的还是自己造轮子,用Java还是Python。或者围绕绩效去做自动化测试,一切唯指标论。
其实最好的方式是,先利用业余时间主动去学习一些自动化测试相关的知识技能,然后尝试在工作中落地实践,解决眼前遇到的各种问题。等做出一定正向效果了,向上汇报,然后争取资源扩大覆盖范围。
这样做的好处是,自己学习的自动化测试相关技能得到了锻炼,拿到了好结果,又能在上级那里有一个好的印象。上级向他的上级汇报时,也能体现出你主动思考和解决问题的能力,皆大欢喜。
自动化测试需要长期持续的投入和迭代,才能如预期拿到好的结果。技术实践本身就是一个马拉松赛跑,迈出第一步是最难的,坚持下去是第二难。
自动化测试分层的问题
自动化测试目前大部分的执行场景依然是针对许多最小最具体的业务场景,如果要验证复杂的业务场景(比如电商业务的下单场景,背后的业务逻辑涉及到库存扣减,三单匹配,购物车数据更新以及缓存数据的更新同步),则势必会导致失败后的排查耗时和难度增加。
有过排查问题经验的同学都知道,越是复杂的系统,排查的难度和耗时往往是指数增长的。为了保障自动化测试的执行效率,降低失败后的排查根因耗时,才有了自动化测试的分层理念和实践,即测试同学很熟悉的三层模型。
但从真正的落地实践难度来说,UI自动化的难度是高于接口自动化测试的。
原因在于,接口自动化除了接口请求本身,主要的难点在于组装数据。
而UI自动化测试,一方面是UI本身的稳定性相较于接口层更差,另一方面则是很多测试同学都去做了接口自动化,都认为UI自动化投入产出比更低,导致没人做UI层的自动化测试。
最后的结果就是做UI自动化测试的高手很少,恶性循环。
自动化测试除了所谓的覆盖率,其实稳定性是一个大家长期以来忽视的问题。相比于接口,UI的稳定性需要多种手段去保障。
典型的场景就是没考虑页面加载和数据展示的正确性,自动化点击了没反应,或者被吞掉了,很多人根本没有解题思路,然后各种sleep,最终的结果就是越来越臃肿。
近几年自动化测试的落地实践其实相对来说难度降低了很多,因为框架和工具更丰富更成熟,学习资料也多。技术的进步会带来这样一个现象:让更多低水平的人可以参与,但也会限制他们能力提升的曲线。
最后自动化测试覆盖率和成果向上汇报的问题
覆盖率本身只是一个衡量和评估的参考数据,并不能对自动化测试真正的效果和价值给出明确的结论。
但出于很多因素的考量,很多同学犯了一个错,即给领导画了一个很大的饼,结果真正做起来才发现难度和耗费的资源超过预期,最后只能用覆盖率之类的指标。
一个案例:小伙伴最初给领导规划的很好,结果为了赶进度,复杂的接口象征性校验一下,为了KPI好看。
最后看起来覆盖率高了,但遇到核心功能改动后需要大范围的回归测试,接口自动化根本靠不住,还得手动回归。
真的不太建议在自动化测试实践中,太过依赖覆盖率作为KPI或者汇报核心,否则大家都是在单纯堆用例或者脚本。
即使出于度量和评估的因素,在制定度量指标时,建议遵循和考量如下几点:
切忌面向指标/面向KPI做度量;
考虑到冗余成本,指标不宜过多;
制定指标是为了提升质量,而非做数据;
根据做自动化测试的目的来制定度量指标;
度量指标对比应该以是否解决了痛点为依据;
度量指标是辅助评估依据,并不是唯一正确的结果;
制定指标应考虑到哪些指标更实际有效,从解决问题角度出发;
度量指标不要单一的评估,应结合多个维度来综合评估开展质量度量;
目前主流测试技能:自动化测试,测试开发,性能测试,安全测试等等,掌握其中之一将更有优势
接口自动化测试方向:Python+requests+pytest+yaml+alluer+Jenkins;
web自动化测试方向:Python+selenium4+pytest+POM+allure+Jenkins;
app自动化测试方向:Python+appium+POM+pytest+allure+Jenkins;
完整版!企业级性能测试实战,速通Jmeter性能测试到分布式集群压测教程
| 下面是我整理的2026年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通

二、接口自动化项目实战

三、Web自动化项目实战

四、App自动化项目实战

五、一线大厂简历

六、测试开发DevOps体系

七、常用自动化测试工具

八、JMeter性能测试

九、总结(尾部小惊喜)
人生最耀眼的不是站在聚光灯下的瞬间,而是黑暗中依然前行的勇气。当你觉得撑不住时,请记住:每个伟大的突破都藏在“再坚持一天”的决定里。你的脚步,正在创造属于自己的传奇!
别被暂时的风雨模糊了视线!那些让你流泪的磨练,正在雕刻更璀璨的未来。当别人选择放弃时,你的坚持就是胜利的宣言。向前奔跑吧,整个世界都在等待你的光芒绽放!
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)