前言
接触了许多非测试和新入行的测试从业者, 听到最多的问题就是:"测试是否被需要?"
团队职能介绍
《暗黑者 1》中有句台词,"专案组有五个职能角色构成, 侦探, 网警, 痕迹侦查专家, 法医还有心理学专家".
软件项目开发也是个分工明确的系统工程, 不同的人员扮演了不同的角色, 可以分为: 项目, 产品, 开发, 测试, 美工等等.
项目经理负责分配资源, 确定优先级, 协调与客户和用户之间的交往.
产品经理负责市场调查并根据产品, 市场及用户等的需求, 确定产品功能的定义, 规划和设计.
开发包括开发经理, 前端开发, 后端开发,
开发经理, 称为产品研发经理, 负责制定并论证产品研发计划, 监督管理研发工作进度及质量, 提出有效的解决方案.
前端开发, 负责呈现给用户的过程中创建 web 页面或 App 等前端界面.
后端开发, 通常称为软件开发工程师, 负责软件概要设计, 详细设计, 编码, 单元测试工作及说明文档的编写, 这一职能更多时候被叫程序员.
测试, 负责理解软件需求, 并对其进行测试, 检查软件中是否存在缺陷.
美工负责领导和协调 Web 界面的原型设计和正式设计.
抛开其他职能不谈, 假设软件开发过程中, 离开测试会有什么结果? 影响有四点:
1, 软件质量差;
2, 增加开发成本, 由开发人员识别和纠正缺陷, 会占用更多的时间成本;
3, 软件推广滞后, 软件质量无法保证, 触及到用户容忍度, 会直接影响到软件在市场中的推广;
4, 增加交易成本, 因为缺少测试标准和程序, 在软件交付过程中用户无法掌握软件的可靠程度;
测试定位
接上一节, 测试人员还可以从 (初, 中, 高) 级别和 (经理, 主管, 组长, 组员) 职位不同角度区分.
测试人员承担的任务角色决定工作内容和负责的任务, 但测试人员需要承担的任务角色是什么呢? 这个没有统一的答案, 不同的公司和团队针对测试这个角色的定位都有所不同.
从我个人的理解, 角色定位有三个, 一是找出软件缺陷, 二是质量保证, 三是参与产品需求优化.
找出软件缺陷, 又称为找 bug, 顾名思义是软件开发人员将功能模块开发完成之后交付给测试, 测试人员开始针对功能模块进行测试验证, 寻找其中的问题.
而在一些流程较规范的公司中, 测试还承担着质量保证和参与产品需求优化工作, 质量保证又称 QA(quality assurance),QA 最重要的思想, 是树立 "自己就是站在客户前面最后一道防火墙" 的概念, 本着对客户负责, 对公司产品形象负责的态度做好测试验证工作. 这要求测试人员对自己公司的产品非常的熟悉, 对容易出问题的地方做到心中有数, 有针对性地进行强化测试.
参与产品需求优化, 看似不是测试人员的工作, 但是对于测试人员在实际的软件测试工作过程中, 会更容易地发现软件中不符合易用性的操作. 因此无论是发现 bug 还是遇到不够人性化的功能设计, 都可以结合软件需求和自身的理解, 对软件错误提出应该如何修改更符合需求和体验, 整个过程中测试人员可以不断地推送软件产品更加成熟.
经过刚才的梳理, 测试人员的工作职责可以列举如下:
1, 搭建测试环境, 安装必要的软件工具;
2, 制定测试计划, 包括测试资源, 测试进度, 测试策略, 测试方法, 测试工具, 测试风险等;
3, 制定测试用例, 为了更好更有效地进行测试, 保证测试工作质量;
4, 发现软件缺陷, 快速地定位缺陷出现的操作步骤, 原因, 编写成正式的缺陷报告提交给开发修复;
5, 评估软件整体质量, 确认软件能否达到需求及标准, 并编写测试报告提交测试成果;
6, 自动化测试, 为了提高工作效率和测试水平;
7, 测试负责人还需要根据实际测试过程中不断地优化流程, 提高测试水平和队伍建设;
思考结语
写到这里, 已经可以回答前言中的问题, 也许在未来测试人员这个岗位会被不需要, 但是测试这个行为会永远存在.
所以在测试生涯的探索和成长过程中, 更应该立足于当前, 思考如何提升自己的贡献, 找到最适合软件开发的测试流程, 平衡软件质量.
来源: http://www.bubuko.com/infodetail-3031943.html