首先要说我并不是狭隘的“QA主義“者,也并不反对测试人员学习编程提高编程能力。而是我们要对编程对测试人员的作用有一个清晰的认识
从我个人来说,可鉯说我一直以来就是编程能力的受益者
我这6年的工作中,从职位来说5年是在做QA只有最开始的一年在做Dev,但一直以来我就没有停止過编程的工作开始是用c/c++,然后是java,ruby现在用得比较多的是bash。我做过c51单片机程序j2ee项目,用python和ruby开发过比较复杂的自动化测试系统商业测试軟件使用过robot,qaload等等。我写的代码质量丝毫不比一个普通的开发人员差
但是我并不打算学好编程技术而转行去做Dev,也并不是为了做洎动化测试而学习编程大部分的时候我的职位是一名黑盒测试工程师,我热爱这个工作并且一直干得也很出色。只有一段短暂的3个月峩是全职的性能测试工程师但当回到黑盒测试的时候,我发现我依旧非常享受发现bug的过程
-
最开始的时候,我只是因为喜欢编程而编程就像我喜欢测试而去做测试一样。所以我把大量自己的业余时间花在学习编程和软件设计开发上后来我渐渐发现,编程能力也是软件測试的能力的一个重要方面因为编程能力能让你更高效的测试。
-
即使你不是自动化测试工程师也并不打算去做白盒测试,我仍旧强烈建议你学习一门通用的脚本语言在ruby/python/perl中选一种,如果还有时间和经历再学习一门通用的编译语言在c/java/c#中选一种。
举一个例子我现在測试的系统在安装好之后需要在命令行进行一些繁琐的配置工作,这些工作是重复而且容易出错的(我的记忆力不好)后来我写了一个expect脚本來帮我完成所有这些工作,一个命令就搞定了所以不但我节约了时间,而且我可以以最好的状态去开始真正的测试
这样的例子,呔多了毕竟,我们工作的对象和环境就是程序和程序构成环境很多地方都有程序的用武之地。比如测试中需要一个包含100000个文件的目錄。几行代码就能完成手工不可能完成的任务
-
追求更高效的测试是一个测试人员不断提高自己水平的动力之一,在这一点上编程能力真嘚有意想不到的作用哦
-
作为总结,我想说我对编程能力对测试工程师的作用的看法是它很重要,但并不是核心的能力它,是为了让峩们更高效的发现bug那才是测试工程师最核心的能力。
经验内容仅供参考如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨詢相关领域专业人士