在国外,资深的软件测试人员大多是手动测试,他们厉害之处在于测试用例的设计,但在国内,很多测试人员都把自动化测试当成很厉害的资本,为什么?

导语:”在国外,资深的软件测试人员大多是手动测试,他们厉害之处在于测试用例的设计,但在国内,很多测试人员都把自动化测试当成很厉害的资本,为什么?”

偶然在知乎上看到一篇关注度很高的话题,标题如上。 作为一名从业8年有余的软件测试工程师,并且一直在外企做测试的我, 忍不住想发表一些自己的看法和见解。

我觉得在国内,很多公司或者个人把自动化测试当成一个了不起的资本,根本是源于国内大家对代码的无上崇拜,这也造就了国内现在IT互联网行业内一个鄙视链: 开发---> 测试开发--->自动化测试--->纯手工测试。所以,在这个鄙视链中,纯手工测试属于底端被碾压的生物。

实际上,我觉得这是一种严重的偏见,并且体现了其对测试行业认知的极其不专业。

首先,我们不能否认自动化测试的作用,他肯定是将来软件测试发展的一个大方向。自动化测试将QA从繁重的重复劳动中解放出来,优化测试资源,提高测试效率,对产品质量保证起到积极的作用;另外,一个有自动化测试脚本、框架、工具开发能力的QA,更有竞争力也是一件毋庸置疑的事情。

但是,但凡做过测试工程师的朋友都知道,一些逻辑非常复杂的场景是很难用自动化脚本实现的,就算要强行实现,也性价比很低,因为太费时费力了。所以用手工测试来执行一些奇葩的场景更灵活方便并且可以发现很多问题;而且,从事过测试的人应该很清楚,同样的一个测试任务,交给不同的测试人员是会有特别不一样的结果,发现的bug数量和最终产品的质量都不一样。所以,手工测试不是手工执行测试,其更重要的部分应该是测试思路和用例设计灵感,这点往往是最困难的,也是需要经验积累以及自我沉淀的地方,更不是自动化代码可以替代的。如果没有一个很好的测试用例和测试思路,纯有代码和工具,那也是巧妇难为无米之炊。

所以,不论自动化测试还是手工测试,都只是一种测试手段或者说是一种测试工具,他们各有自己所服务和侧重的领域,并无高低贵贱之分。真正专业的公司和企业,绝对不会一味的追寻和崇尚自动化测试,关注的核心一般会放在测试用例、业务模型和测试分析上。

我自己待过三家公司,都是在北京的外企或者外资企业,三家公司都是美国或者台湾上市的成熟公司,成立至少15+年左右。我在职期间,公司虽然都有自动化测试团队,但是都并不是最核心部门。举例其中一家,其团队模型是手工测试和自动化测试分别在不同的team里,虽然都是服务于同一个产品的,但是业务是完全隔离的。纯手工测试负责测试用例的设计,执行手工测试,包括功能性能等,然后自动化测试拿着相应的测试用例,去实现代码自动化。相信,这种测试模型分布在目前国内大部分的公司来说是最常见的,但是却也是问题比较显著的。这里的主要问题就是,纯自动化团队没有参与手工测试所以他们并不懂业务,不会设计测试用例测试,他们实现的自动化代码,往往不能覆盖我们产品核心重要的业务,能够发现的问题往往是用户不那么关心的问题。 这样,自动化测试的初衷就不复存在了。导致的一个现象就是,本来自动化测试是为了释放双手,节约人工和时间成本,但是后来手工测试团队没有办法完全信任自动化团队的测试结果,很多版本的迭代测试,都还是要亲力亲为测一遍才敢发布出去,这样自动化测试就成为了一个很鸡肋的存在。

当然,这种问题目前也慢慢被重视起来所以得到了一些改善。现在很多公司都是手工测试和自动化测试归属于同一个team。在产品项目前期,设计测试用例和定测试模型是他们;等产品部分功能稳定了,代码改动少了,实现自动化脚本覆盖每个迭代的回归测试是他们;随着产品成熟,优化手工测试用例,以及开发自动化框架提高覆盖率的还是他们.....当然,这种工作模型是一种比较理想的状态,需要测试人员的素质和技术都是一流的,才能完全覆盖包括手工测试和自动化测试各个阶段的工作,企业需要这样的人才,个人需要这样的奋斗方向,这将会是测试领域的人才需求的趋向。

说了这么多,总结一下,对于测试行业,手工测试和自动化测试缺一不可,手工测试是基础,自动化测试是锦上添花。所以,基于现在的市场需求,测试工程师们应该先打好基础,积累很好的测试理念和测试思想,然后可以进一步提升自己的自动化能力,让自己成为市场需要的全面型人才。

原文地址:https://www.cnblogs.com/tricy-nmb/p/11412109.html

时间: 2025-01-02 16:48:20

在国外,资深的软件测试人员大多是手动测试,他们厉害之处在于测试用例的设计,但在国内,很多测试人员都把自动化测试当成很厉害的资本,为什么?的相关文章

国外常用的软件测试网站

http://bdonline.sqe.com/ 一个关于网站测试方面的网页,对这方面感兴趣的人可以参考 http://citeseer.nj.nec.com/ 一个丰富的电子书库,内容很多,而且提供著作的相关文档参考和下载,是作者非常推荐的一个资料参考网站 http://groups.yahoo.com/group/LoadRunner 性能测试工具LoadRunner的一个论坛 http://groups.yahoo.com/grorp/testing-paperannou-nce/mess

设计一个用于人事管理的People(人员)类

1 #include <iostream> 2 #include <string> 3 using namespace std; 4 5 class Date //日期类 6 { 7 private: 8 int year; 9 int month; 10 int day; 11 public: 12 Date(){} //默认构造 13 Date(int y,int m,int d) //带参构造 14 { 15 year=y; 16 month=m; 17 day=d; 18

软件测试:测试用例的设计思想

一,登陆页面的测试: 下面以一个登陆窗口为例,说说我设计登陆界面的思路和方法.我把这个测试用例分为三层结构,表单测试.逻辑判断.业务流程. 第一层,表单测试为最底层(最基础的).这部分的测试用例是对登陆窗口这个界面的输入框.按钮功能.界面等最基本功能的测试.一般来说登陆用户名和登陆用户密码是输入框的形式体现,那么,我们需要的是针对这两个输入框进行功能的测试.这时,我们只要考虑这个输入框的功能,而不需要考虑业务方面的内容.这样,我们考虑就是这个输入框的长度限制是多少?能否输入特殊字符?能否输入全角

SaaS还需要销售吗?

SaaS产品的在线交付.订阅购买等优势,在挑战传统软件盒装.下载.安装.部署等,同时也给渠道和销售带来了极大的变革.SaaS企业应该如何对待销售,已成为所有行业人士所共同关注的话题.日前,SaaS学堂微信群部分用户就此问题进行了探讨. "好的销售,可遇而不可求",[email protected]极北数据感叹到,[email protected]时趣技术营销官补充认为尤其如果产品面向大型企业,这种"大客户销售"就更加难找,同时薪资要求也非常高,如果企业产品定位于中小

初学者入门:软件测试从零开始(作者:王威)

初学者入门:软件测试从零开始 作者:王威 本文面向软件测试新手,从测试前的准备工作.测试需求收集.测试用例设计.测试用例执行.测试结果分析几个方面给出建议和方法.鉴于国内的软件开发.测试不规范的现状,本文为软件测试新手提供了若干个软件测试的关注点. [关键词]软件测试.测试用例.测试需求.测试结果分析 引言 几年前,从学校毕业后,第一份工作就是软件测试.那时候,国内的软件企业大多对软件测试还没有什么概念,书店里除了郑人杰编写的<计算机软件测试技术>之外,几乎没有其它的软件测试相关书籍,软件测试

软件测试:等价类划分-----EditBox问题增加文本框

在经过初步对等价类划分的学习后,老师提出了新的问题 依然是EditBox问题,增加为3个文本框,等价类的划分会有怎样的变化   则题目应如下: 允许1到6个英文字符或数字,按OK结束 有效等价类: 长度:1到6 字符:a-z,A-Z,0-9 无效等价类 长度:0,7 字符:英文/数字以外字符,控制字符,标点符号 有三个文本框 设计如下: 以输入条件划分等价类 条件一  长度在1到6之间 条件二  字符属于a-z,A-Z,0-9 编号 有效等价类 编号 无效等价类 1 1到6个数 5 小于1个数

软件测试的基础之名词解析

一.软件质量 1.软件质量的度量方法 软件质量的度量方法有多种,它们可进一步划分为静态质量特性和动态质量特性. 静态质量特性是指实际的代码和相关文档.包括结构化的.可维护的.可测的代码以及正确而又完整的文档. 动态质量特性是指软件在使用中表现出来的行为.包括软件可靠性.正确性.完整性.一致性.易用性和性能. 2.软件的可靠性 定义一:软件可靠性是指软件在给定时间间隔和给定条件下无故障运行的概率(定义中所指的概率依赖于程序输入的分布情况,这种输入分布常常被称作操作剖面.根据定义,软件的可靠性会因操

大话软件测试

大话软件测试(不扭曲,不变形,不晦涩,不忽悠,明晰软件测试,从哪里来,到哪里去.大鸟和小白为您洞见软件架构底层,诠释软件测试的设计哲学.) 欧立奇 何金池 等 编著   ISBN 978-7-121-24097-3 2014年9月出版 定价:45.00元 280页 16开 编辑推荐 本书用完整严密的知识体系和诙谐幽默的语言,为您在软件测试的道路上打好坚实的基础:培养读者敏锐的洞察力以及优秀的测试素养,提高自身功力,从容面对软件开发/测试. 内容提要 <大话软件测试>通过小白与大鸟的趣味情景对话

软件测试概述、结构化测试

一.软件测试的目的 是在最小的成本和最短的时间内,通过设计良好的测试规程和测试用例,系统地发现不同类别的错误. 二.软件测试的基本原则 设计好的测试用例.不可能进行穷举测试.尽早开展测试.重点测试.定期进行检验与修正测试用例,并增加新的测试用例.测试依赖于系统环境.测试用例应该包含合理和不合理的输入条件. 测试过程模型 V模型特点:1.对应瀑布模型的变种(自下到上)线性关系 2.有局限性,在于不能体现"尽早地和不断地进行软件测试"的原则 3.仅仅把测试过程作为在需求分析.概要设计.详细