作为一名软件测试工程师,需要具备哪些能力?

通用技能上:

1.基本计算机知识(操作系统,数据库,通讯协议原理,熟悉至少—门编程语言)

2.基本软件测试知识(各种测试理论,测试方法论,测试用例编写,缺陷界定标准,软件质量评估)

3.简单项目管理知识

产品、系统认知∶

1.熟悉所测产品功能,能够将产品文档内描述的UC转化成TC,这个最最基本

⒉熟悉所测产品的一些隐藏需求或者功能(业务上的进阶能力)

打个比方,支付公司上一种新的支付渠道,熟悉业务的测试人员应当可以预见到这次升级可能会对前段界面、系统账务、各类报表等各个模块造成影响,从而一并纳入测试范畴。

要知道,很多时候,即便是接入这些渠道的产品经理,也不一定会在Prd或者UC中对这些可见影响项一一列出,这需要经验和责任心。

性格上:

1.有牛皮糖属性的为佳,越“不要脸”越好

测试工程师,在很多公司,和研发是有业务上对立属性的(虽然从宏观角度上来说,都是为了提高软件质量服务)。测试工程师提交的BUG越多,意味着研发工程师工作质量越差,需要返工的工作量也越大,甚至会影响绩效,所以测试工程师有时候很容易得罪研发部门。

一个可以相对坚持原则(比如3级BUG以上一定要改),又能拉下脸和不愉快的研发工程师保持较好关系的测试工程师,会对项目质量起到很关键作用。说到底,又能做事(发现BUG并督促修改),又会做人(该进的不让,该退的绝对给面子,最大化消除部门间矛盾)的测试工程师,是十分难得的。

2.有异想天开属性的为佳

这个只可意会,不好言传的。在我带过的团队里,的确有那种奇......经常会用令人匪夷所思的方式找出BUG,这是天赋。

3.会“偷懒”的为佳

这里的偷懒不是指上班发微博聊天混日子,而是能够利用已知资源对枯燥乏味的测试工作进行优化的同学。

说个实例∶

我以前公司曾经上过一个“授信”项目,做过金融类项目的同学大家都知道。授信项目的测试用例

真可以说是相当变态,随着账期、滞纳金率、手续费率、利息率、本金、还款情况的不同,可以衍生出无比多的用例,同时每个用例进行编写时,都要仔细根据规则计算预期结果的资金状况,非常费力。

咱部门一个小伙子,头一天晚上拿了PRD,第二天晚上就利用Excel写了一个固定某些账期下不同情况下的各项资金计算工具(有一些小BUG,无伤大雅).….大大减少了兄弟们按计算器的工作时间。这种“懒”员工,你是领导你喜欢不?

事情没完,在实际测试的过程中,我们发现一旦研发修改了BUG,会引发其他用例的大崩溃(这类项目真悲剧,牵一发动全身),每次版本升级我们都不得不进行全面的回归测试。

太坑爹了,这不是要命么?

聪明的测试同事们又想偷懒了,他们在数据库端写了一个数据匹配工具,每次新跑用例就拿正确的(已保存)数据文件自动去比对新产生的文件,自动返回比对结果。兄弟们再也不用每次回归都一行行打SQL去查数据了,棒极了。

在研发修改BUG之余,他们自己写了一套存储过程,可以实现数据的自动回归和增量备份,再也不用每次把所有数据擦光从第一个交易日跑起了,棒极了!

说了那么多,其实就一句话:干一行,爱—行。

2020软件测试全套免费学习资源分享

最后:

欢迎关注公众号:程序员一凡,领取一份300页pdf文档的Python自动化测试工程师核心知识点总结!

这些资料的内容都是面试时面试官必问的知识点,篇章包括了很多知识点,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

你可能感兴趣的:(作为一名软件测试工程师,需要具备哪些能力?)