01-02 测试开发概述
[TOC]
引言:
软件工程项目的术语,要追其含有概念 ,笔者觉得最科学的方法是参考三个地方定义,这三个地方分别是
百度百科,维基百科(IEEE定义),还有就是高校的教材。
百度的词条是中国本土的知识百科,表达通俗易懂,适合中国本土,必需参考。
维基百科或者IEEE, 这虽是欧美标准,但含义通常更具国际意义,也必须参考。
高校教材,尤其是以清华大学出版的计算机科学,软件工程相关教材都是中国信息技术业务著名教授甚至中科院士编著的也具有典型的参考意义。
在了解测试开发的概念,其实是要是了解五个概念。
测试
质量
自动化测试
开发
测试开发
正文:
这五个定义 ,众说纷纭,各有说辞。
笔者认为在互联网 ,信息技术 和软件工程 范围内定义如下 :
1 质量 :
通常人们所说的 QA ,许多公司对其划分名称是质量保证,也独立在研发部门之外。 质量 更注重 整个开发 过程 ,对软件每个阶段输入输出标准进行定义。
2 测试
通常人们所说的QC, 许多公司对其划分名称是测试 ,属于研发部门之内,测试更注重结果,检验软件是否满足业务需求。
IEEE对软件测试的定义: “使用人工或自动化手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果和实际结果之间的差别”
3 自动化测试
使用程序或者脚本执行测试从而减少人工测试的过程。例如,unittest单元测试,jmeter接口自动化测试等等。
4 开发
这里指的是软件工程中的编码人员,例如java开发,前端开发,go开发等等。
广义的开发是指开发过程中的所有人员,包括,前端开发,后端开发,测试,运维开发。
当前火热的开发还有 python算法开发,python金融量化分析,python后端开发,python爬虫开发,python游戏开发。
5 测试开发
测试开发更多的是指开发测试工具的开发人员,可以是 测试人员本身,也有可能是开发人员。
不过经过无数人的实验下,还是测试人员组成的测试开发更适合,因为具有测试背景和经验的人员开发出来的工具和系统,才更能满足测试的需要,才能更加提高效率。
思考与延伸
质量和测试的侧重点是有区别的,他们区别是什么呢?
自动化测试和测试开发是有区别的,他们的区别是什么呢?
后面的文章会为你娓娓道来。