课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,软件开发行业也越来越细分和垂直化,而今天我们就通过案例分析来了解一下,软件开发工程师与软件测试工程师的差异性。
1.开发工程师和测试工程师的工作目标存在巨大差异
开发工程师的工作目标是实现功能,目标相对明确,判定成功的标准也明确即目标功能实现正确。
但测试工程师的工作目标是高效的寻找软件缺陷,需要的是风险思维和概率思维,判定测试成功的标准也不算明确,发布后的评估才是终极审判。注意这里评价测试工作的两个维度,一个是高效,一个是缺陷。
2.同样的事情,从组织的角度考虑谁做更划算
做每件事情都有成本,标准的思考模型应该是两利相权取其大,两害相权取其轻。针对代码逻辑的单元测试谁做成本低?收效高?当然是编写代码的本尊了!企业必须用有效率的方案去获取目标。
3.单功能点验证不是测试工程师眼中的软件测试
如果你细心观察,你会发现大多数具有开发背景的工程师口中的软件测试基本上都是单功能点验证,并且他们坚持认为这就是测试的全部。作为一个专业软件测试工程师,我可以很负责任的告诉你,单功能点验证通过只是系统化软件测试的入口条件,绝不是测试的全部,或者在严格意义上来说这根本就不是软件测试。专业的软件测试工作研究的是功能的组合,在无穷无尽的功能组合中寻找当前场景下的优解才是你应该追寻的目标。什么是优解那?就是在平衡各方利益的情况下,如何有效率的满足既定的质量目标!
理想情况下,我们拿到的软件就应该是一个单功能点验证通过的产品。换句话说,单功能点验证应该是开发工程师的职责!只有这样,专业的测试工程师才能发挥大的效用。
如果你的公司只做单功能点验证,或者说绝大多数工作都是单功能点验证,我可以明确地跟你说,你做的不是专业测试工作。你测试的产品质量一定很差!你需要系统的学习一下软件测试到底怎么做。
综上所述,开发的测试和测试的测试根本就是两个概念,单元测试本就应该由开发工程师完成,单功能点的验证不能是测试的全部,专业的测试工程师要具备风险思维,要做基于风险的测试覆盖。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请在707945861群中学习了解。