简单介绍软件测试(一)

软件开发中的各个角色一个软件或者系统的开发, 并不是一个人或者一个角色就可以完成的,在了解软件测试之前,应该了解一下整个软件开发过程中每个角色,以及他们所对应

软件开发中的各个角色

  一个软件或者系统的开发, 并不是一个人或者一个角色就可以完成的,在了解软件测试之前,应该了解一下整个软件开发过程中每个角色,以及他们所对应的工作内容。

  产品经理:负责市场调研并依据产品,市场及客户的需求,确定研发何种产品,选择何种业务模式,商业模式等,并推动相应产品的开发设计。(输出需求)

  设计师:负责产品的设计,让软件看起来更加美观,优化用户体验和视觉效果(设计需求样式)

  开发工程师:负责软件产品功能的实现,俗称「程序员」(开发需求)

  测试工程师:负责在「测试环境」验证「开发工程师」开发的功能是否符合「产品经理」以及「设计师」输出的需求,并推动问题解决(测试需求)

  运维工程师:负责将已经验证好的产品功能提交到「生产环境」,并保障产品稳定提供给用户使用(发布需求)

    

 

 

   以上便是软件开发过程中的核心角色,当然并不是每个公司都是这种模式进行,不同公司有不同的特色,会根据自己公司的特殊情况进行调整,例如小公司可能没有设计师,没有运维,大公司可能这中间还会出现其他角色,像「项目经理」等。

 

那「软件测试工程师」主要是做什么的呢?

软件测试是干什么的?

  可能很多刚刚进入互联网行业的小白,对于互联网行业的岗位和角色还不是很清楚,特别是平时没有出现再大众视野的「软件测试」岗位。那「软件测试」究竟是做什么的呢?他服务于谁呢?简单来说的话,「软件测试工程师」需要做的就是根据「产品经理」提出的需求,验证「开发工程师」提交的软件产品是否符合预期,如何不符合则需要提交 bug 并跟进处理。说白了就是需要测试程序员写的代码有没有 bug 。下面是对工作的详细描述:

  • 第一、通过测试发现软件中的缺陷或不足

        通过测试发现软件中存在的不足是其中一个内容,测试软件的技术分为两种,一是黑盒测试,二是白盒测试。之后通过黑盒和白盒进行不同类型的测试比如有类弄分法、因果图法以及白盒测试中的分支覆盖等等,通过这些不同的测试可以发现软件中存在的不足,以让软件开发工程师再次进行完善。

  • 第二、软件测试需要把发现的的问题整理成报告

软件测试的工作还包括把发现的问题整理成报告上交,提交缘分开发工程师,当得到确认后再对软件进行修复。对于软件测试是干什么的问题,大家还需要了解,测试人员在整理报告的时候应使用专业的术语,同时要具备很好的文字表达能力以及较强的语言组织能力,也只有这样才能把发现的缺点或不足详细、清楚的表达出来,让开发人员更好的对软件进行修复。

  • 第三、测试人员需要分析软件的质量好坏

        除了要测试软件的不足,还要分析软件质量的好坏,需要根据测试的结果来分析,计算出软件的缺陷率和缺陷分布的情况,以及提出对软件修复的趋势等。测试工程师需要给出软件各种质量特性的具体度量,比如功能性、可靠性以及易用性等,并得出结论提交给软件开发工程师。

 

软件测试的目的

  软件测试的目的是尽可能多的发现软件缺陷。检查系统是否满足需求,站在用户角度思考产品或项目功能实现的正确性。
  测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布特征。可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,通过分析也能帮助我们设计出有针对性的检测方法,改善测试的有效性。
 

软件测试的基本流程

  软件测试的基本流程(重点)

  测试需求分析阶段:阅读需求,理解需求,主要就是对业务的学习,分析需求点,参与需求评审会议

  测试计划阶段:主要任务就是编写测试计划,参考软件需求规格说明书,项目总体计划,内容包括测试范围(来自需求文档),进度安排,人力物力的分配,整体测试策略的制定。风险评估与规避措施有一个制定。

  测试设计阶段:主要是编写测试用例,会参考需求文档(原型图),概要设计,详细设计等文档,用例编写完成之后会进行评审。

  测试执行阶段:搭建环境,执行冒烟测试(预测试)- 然后进入正式测试,bug 管理直到测试结束

  测试评估阶段:出测试报告,确认是否可以上线

  Plan-Do-Report

  总结

  开发流程:了解用户需求 --> 进行需求分析 --> 得知功能组成及设计软件结构 --> 开发设计计划 --> 概要设计 --> 详细设计 --> 进行软件编码 --> 单元测试 --> 代码审查 --> 打包提交给测试部 --> 测试部返回 bug --> 更新修复 bug --> 再次进入测试部测试 -->......--> 直到 bug 解决 --> 版本上线 --> 面向用户使用

  测试流程:了解用户需求 --> 参考需求规格说明书 --> 测试计划(人力物力时间进度的安排)--> 编写测试用例 --> 评审用例 --> 搭建环境 --> 测试包安排预测(冒烟测试)-正式测试 -->测试结束出报告 --> 版本上线 --> 面向用户

您可能有感兴趣的文章
软件测试(理论基础)

什么是软件测试,软件测试究竟是做什么的

软件测试基础知识整理

软件测试概念及分类整理汇总

软件测试步骤详解