究竟什么是软件测试工作的相对稳定的内在特质呢?和开发有什么区别?
首先,我觉得还得从专职软件测试的产生说起。首先,软件行业最初是没有专职的测试人员和测试团队的,这个分工是后来形成的。其次,现在很多互联网创业公司,最初也没有专职测试人员和测试团队。
那么在软件测试的专业分工形成以后,究竟什么工作被分了出来?这个回答很简单,就是软件测试的活动?那么软件测试的活动包含哪些?这个就有可能不那么容易形成一致了,在现实场景中每个行业和每个公司可能有差距。我认为软件测试的最终目的和产品、开发、运维等等应该是一致的,就是保证软件产品符合用户的预期,给用户和企业创造价值和利润。在这个工程中,以传统瀑布模型为例,试着比较一下各个工种的分工:
1.需求提出阶段
1.大家都会关注需求的合理性
2.开发人员更关注需求的实现方式和代价等
3.测试人员关注需求的可测性(不展开可测性,有需要自己查)
4.------------------这个阶段我认为对测试人员和开发人员只有技能要求不同,没有本质区别
2.技术设计阶段
1.大家都关注设计本身的正确性,完整性等
2.开发人员更关注设计的实现方式、工具、代价
3.测试人员还需要关注可测性
4.------------------这个阶段我认为对测试人员和开发人员只有技能要求不同,没有本质区别
3.开发测试阶段
1.开发人员构建产品,修改bug
2.测试人员构建测试工具,测试用例等素材,执行测试,暴露bug
3.-------------------这个阶段我认为对测试人员和开发人员只有技能要求不同,没有本质区别
好像只是技能需求不同,并没有本质区别。所以选择什么工作,还是根据自己的爱好来吧,喜欢测试多点就做测试,喜欢开发就做开发。
>>戳戳,免费下载最新版本TestWriter!(小白也可以用的自动化测试工具)