软件测试技术是软件开发过程中的一个重要组成部分,是贯穿整个软件开发生命周期,对软件产品进行验证和确认的活动过程,其目的是尽快尽早的发现在软件产品中所存在的各种问题--与用户需求、预设定义不一致性、检查软件产品的bug,写成测试报告,交于开发人员修改

1、软件测试的定义

  软件测试的概念:为了发现程序中的错误而执行程序的过程

  概念里面的程序是我们平常熟悉的各种app(微信,QQ,支付宝)或者是各类网站(小米,京东),概念中的错误时指逻辑错误或者是功能错误或者是指界面易用性等方面的缺陷

 

举个例子:使用app是出现了闪退,那么这个就是你在使用app的过程中发现的bug。

 

随着软甲工程师活动的不断演化,软件测试工作已经成为了不可或缺的一部分,测试工作在某种程度上是可以很大幅度提高软件产品质量以及提升用户体验满意度,经过项目实线与总结,我们软件测试工程师进行软件测试的目的是:

  • 为了保证软件产品的最终质量,在软件开发的过程中,对软件产品进行质量管控
  • 为了证明程序有错,而不能保证程序没有错误
  • 为了确保软件产品最大限度的符合用户的需求
  • 为了提高产品的用户体验和产品的易用性

2、软件测试工程师流程

  在我们深入了解软件测试工作流程之前,要先认清楚工作中,我们会接触到各类岗位的角色

  产品经理:负责策划产品,设计产品以及整理各类需求文档

  项目经理:负责处理所有事物性质的工作,项目经理是项目的成功策划和执行总负责人,首要职责是预算范围内按时优质的领导项目小组完成全部项目工作内容,并使用户满意,为此项目经理必须在一系列的项目计划,组织和控制活动中做好领导工作,从而实现项目目标,任何项目内的事情都可以找项目经理调解

  测试经理:测试经理的职责是有效的领导一个测试团队,为了更好的履行这个职责,测试经理必须理解测试的基本原则,在履行一个传统领导角色的同时还应该知道如何有效的实现一个测试流程,包括搭建一个有效的测试环境,创建一个有效的测试团队,所有的测试人员都归测试经理管理,他会根据团队的任务和工作时间去进行一个有效的安排,我们编写的测试计划及报告都必须是测试经理审批过后才能往外发

  程序员:专门负责编写代码,所有产品的最后成果都出自他们之手

  软件测试员:软件测试员是指根据测试计划和测试方案进行软件测试,能够针对软件需求开发测试模型,指定测试方案,安排测试计划,并对测试项目进行管理的专业人员,这个岗位就是去发现产品中的各类bug,并提交到bug管理系统,让开发区进行修复,然后要进行反复测试,知道产品顺利上线,我们的测试工作才能暂时告一段落

 

  那么软件测试的工作流程具体分为几个阶段呢?每个公司测试的工作可能会不相同,但是大体一致,主要是下面这几个阶段

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

   计划阶段:主要任务是编写测试计划,参考软件需求规格说明书,项目总体计划,内容包含测试范围,进度安排,人力物力的分配,整体测试策略的制定,和风险的评估与规避措施的制定,一般有测试主管编写,当然我们也会参与相关的评审工作

  设计阶段:主要任务是编写测试用例,会参与需求文档、概要设计、详细设计等文档,有不明确的也会及时和开发、产品经理沟通。用例编写完成后悔进行评审

  执行阶段:首先搭建测试环境,执行预测,已判断当前版本是否可测,如果预测通过,正式进入系统测试,遇到问题提交bug到缺陷平台,并对bug进行跟踪,知道被测软件达到测试需求要求,没有重大bug,测试结束

  评估阶段:出测试报告,对整个测试的的过程和版本质量做一个详细的评估。确认是否可以上线