测试人员可以从(初、中、高)级别和(经理、主管、组长、组员)职位不同角度区分。测试人员还可以分为功能测试,性能测试,自动化测试,安全测试工程师……
软件测试工程师的定位和职责
测试人员承担的任务角色决定工作内容和负责的任务,但测试人员需要承担的任务角色是什么呢?这个没有统一的答案,不同的公司和团队针对测试这个角色的定位都有所不同。
测试人员和开发人员在某些角度来看,他们是处于对立的!
开发人员总是在说我的程序没有问题,测试人员会一直作为用户的角度去怀疑程序是有问题,否则你不会是一个合格的测试程序员。开发人员是建造者,而测试人员是破坏者,他们总是在从不同角色试图破坏系统。
从我个人的理解,软件测试工程师职责定位有三个:一是找出软件缺陷,二是质量保证,三是参与产品需求优化和开发(或)测试过程优化。
角色定位有两个:一是测试设计工程师,二是测试执行工程师。
找出软件缺陷,又称为找Bug,顾名思义是软件开发人员将功能模块开发完成之后交付给测试,测试人员开始针对功能模块进行测试验证,寻找其中的问题。
而在一些流程较规范的公司中,测试还承担着质量保证和参与产品需求优化工作,质量保证又称QA(qualityassurance),QA最重要的思想,是树立“自己就是站在客户前面最后一道防火墙”的概念,本着对客户负责,对公司产品形象负责的态度做好测试验证工作。这要求测试人员对自己公司的产品非常的熟悉,对容易出问题的地方做到心中有数,有针对性地进行强化测试。
参与产品需求优化,看似不是测试人员的工作,但是对于测试人员在实际的软件测试工作过程中,会更容易地发现软件中不符合易用性的操作。因此无论是发现Bug还是遇到不够人性化的功能设计,都可以结合软件需求和自身的理解,对软件错误提出应该如何修改更符合需求和体验,整个过程中测试人员可以不断地推送软件产品更加成熟。
软件测试工程师的定位和职责
经过刚才的梳理,测试人员的工作职责可以列举如下:
1,深入得理解需求,确保做出来的产品是真正用户所需要的。
2,搭建测试环境,安装必要的测试工具;
3,制定测试计划,包括测试资源、测试进度、测试策略、测试方法、测试工具、测试风险,测试时间,测试环境等等;
4,编写测试用例,为了更好更有效地进行测试,避免随意测试,保证测试工作质量;
5,发现软件缺陷,快速地定位缺陷出现的操作步骤、原因,编写成正式的缺陷报告提交给开发修复 ;
6,评估软件整体质量,确认软件能否达到需求及标准,并编写测试报告提交测试成果;
7,进行自动化测试,为了提高工作效率和测试水平;
8,测试负责人还需要根据实际测试过程中不断地优化流程,提高测试水平和队伍建设;
那作为为一个测试人员需要一些什么样的技能呢?
软件测试工程师的定位和职责
写到这里,已经可以回答前言中的问题。也许在未来测试人员这个岗位会不存在,也许未来的测试人员本身会是一个开发人员,或者叫测试开发程序员,但是测试这个行为会永远存在。所以在测试生涯的探索和成长过程中,更应该立足于当前,思考如何提升自己的技能和贡献,找到最适合软件开发的测试流程、平衡软件质量、平衡开发成本。