前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >软件测试基本概念

软件测试基本概念

作者头像
测试小兵
发布2019-09-03 18:02:19
5800
发布2019-09-03 18:02:19
举报
文章被收录于专栏:猪圈子猪圈子

一:软件测试的定义:

根据用户需求行业规范,采用一些测试方法或一些工具对被测系统(程序数据文档)进行相应的测试(审核,运行,评估),尽早尽快的发现软件问题,提升软件的质量。

二:软件测试的生命周期:

  第一阶段:问题的定位与规划阶段

  第二阶段:需求分析阶段

  第三阶段:软件的设计阶段(概要设计,详细设计)

  第四阶段:软件编码阶段

  第五极端:软件测试阶段

第六阶段:运行与维护阶段

三:软件测试的需求

需求规格说明书(产品经理编辑):收集客户的反馈,市场人员的调研,收集市场需求,和市场人员沟通,业内需求(行业规范,功能需求)

  为什么都要形成文档:项目管理的需要

  作用:描述客户对于软件的期望和要求

  供大家评审:需求有没有错误或不一致,需求是否可以测试,进一步理解用户的需求,为后续的测试作准备第一阶段:需求分析

  需求分析:

  1:学习需求,充分理解需求

  2:找出需求中的问题(模糊不清,有歧义),如需求文档已经发布或测试已经开始执行提交文档bug单的情况 (两者瞒住一个就需要提文档bug单)

  3:准确评估测试点和工作量(为写用例奠定基础)

四:软件测试的分类:

  技术划分

  -白盒测试;(针对单元测试)对内部代码逻辑进行测试,关注输出对于输入的正确性

  -灰盒测试:(针对集成测试)基于白盒与黑盒之间

  -黑盒测试:(针对系统测试)依据需对求程序的多面处进行测试通过软件的外部表现来发现其缺陷。

  状态划分

  1:动态 - 手工,自动化,半自动化

  2:静态 -文档评审(雪球评审,设计评审,测试文档(猜测是计划,用例,报告),用户手册)

  -代码走查:开发人员之间相互阅读代码检查代码是否符合编程规范 注:代码走查发现的问题比单元测试的多

  阶段划分

  1:单元测试:根据系统设计文档,主要测试程序的源代码和内部逻辑,力度最小,一般是开发小组采用百合测试

  注:不关注代码是否符合编程规范

  2:集成测试:依据系统设计文档和需求文档,属于单元测试和(确认测试)系统测试之间起到桥接的作用

  单元测试之后进行,由开发小组运用灰盒测试技术进行测试

  即验证内部代码逻辑又关注需求实现(跑通基本功能不会像系统测试那样验证多种异常场景)

  3:确认测试:依据需求文档,在集成测试后,通过集成测试之后,软件已完全组装起来,接口方面的错误也已排除,

  确认测试即可开始。

  确认测试应检查软件能否按合同要求进行工作,即是否满足软件需求说明书中的确认标准。

  4:冒烟测试:进行时间:新版本发布后 测试内容:对软件的基本功能点的流程测试确保通过冒烟(软件能否跑起来)

  5:系统测试:依据需求文档,粒度最大,一般由独立测试小组采用黑河测试验证多种场景下功能是否符合课采用手工或自动化

  -包括:

  功能测试-对产品的功能进行验证,根据测试用例逐项进行验证

  性能测试- 测试软件处理业务的速度(同时并发,同时在线)

  压力测试-系统正常运行的极限状态

  健壮性测试-异常情况下软件正常运行的能力(包括容错力和恢复力)

  可靠性测试-长时间的运行看软件有没有问题(如手机用长了会卡顿)

  安全性测试-指软件防止非法入侵的能力(属于技术问题也属于管理问题)

  6:探索性测试:天马行空的的设计和执行测试用例,利用软件程序所提供的信息只有发挥,没有限制不受任何条件的约束的探索程序的各种功能

  7:alpha和beta测试:

  alpha:(内测)在受控制环境下进行的测试,技术人员会在现场

  beta:(公测)开发者通常不在测试现场,因而开发者无法 控制测试现场

  注:一般应用于大型公用软件,没有具体用例,这两种测试都是从实际终端用户角度出发对软件功能和性能进行测试

  8:回归测试:1:bug修复后且在新的测试版本发布后需要进行回归测试

  2:bug修复后的回归测试在交付前需要进行全量用例回归的测试也叫(顶版测试)

  确保BUG修改后有没有引入新的bug导致其他部分有没有产生错误

  9:验收测试:验收测试与系统测试非常相似主要区别是验收测试是由客户或用户执行

脚本:猪圈子

图片:猪圈子

来源:猪圈子

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-09-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python测试社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
项目管理
CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档