当前位置:首页 > 软件测试 > 正文内容

软件测试基本概念

一、什么是需求

1、用户需求

甲方爸爸提出的需求,一般来说比较粗略


2、软件需求

开发人员需要实现的功能。大多数公司在软件开发的时候把用户需求转化为软件需求,开发人员和测试人员工作的直接依据就是软件需求


软件需求是测试人员进行测试工作的基本依据!


二、什么是bug

bug就是软件错误,无法根据程序的到正确的执行结果,这里提一个关于bug的小故事:



三、什么是测试用例

测试用例是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境,测试数据,预期结果等要素。

测试用例的意义:当不知道是否全秒的测试了所有功能-测试的覆盖率无法衡量-对新版本的重复测试很难实现-存在大量的冗余测试影响效率,测试用例就是为了解决上述的问题!


四、开发模型和测试模型

1、项目开发的生命周期

需求分析 —— 计划 —— 设计 —— 编码 —— 测试 —— 运行维护


2、瀑布模型(Waterfall Model)


优点:强调开发的阶段性 阶段独立 强调早期计划和需求调查 强调产品测试


缺点:1、测试在编码过后才进行,没有预留足够的时间给测试  


           2、依赖早期进行的唯一一次需求调查,不能适应需求变化


           3、可运行的产品上线太晚,给项目带来很大的风险,尤其是集成的风险。


3、螺旋模型(Spiral Model)

适用场景:一般在软件开发初期阶段需求不是很明确的时候,采用渐进式的开发模式。


螺旋模型是渐进式开发模型的代表之一。因此螺旋模型适用于那些规模大、复杂度高、风险大的项目


优点:强调严格的全过程风险管理 强调各开发阶段的质量 


缺点: 更多人员、资金、时间的投入


4、增量、迭代模型

比如我们要在纸上画一个人


增量:我们先画头,再画身子,再画......


迭代:我们先画轮廓,再画基本雏形,再上色.....


优点:能显著降低项目风险


缺点:测试需要频繁进行,测试人员需要与开发人员更加紧密地协作


5、敏捷模型

在学习这个知识点之前,请和我大声地朗读《敏捷宣言》地价值观:


个体与交互重于过程和工具!


可用的软件重于完备的文档!


客户协作重于合同谈判!


响应变化重于遵循计划!


在每对比对中,后者并非全无价值,但我们更看重前者!


敏捷开发有很多种方式,scrum是其中比较流行的一种


特点:轻文档,快速迭代


三人五会


三人:产品经理,项目经理,研发团队


产品经理整理user story,形成左侧product backlog


 五会:


1、发布计划会议:产品经理收集用户需求,对其进行估算和排序,发布计划会议的产出就是指定出这一期迭代要完成的 story 列表,sprint backlog


2、迭代计划会议:项目团队对每一个story进行任务分解,分解的标准是完成该story的所有任务,每个任务都有明确的负责人,并完成工时的初估计


3、每日例会:每个scrum master召集站立会议,相关人员都收邀参加,团队成员回答昨天做了什么,今天计划做什么,有什么问题


4、演示会议:迭代结束之后,召开演示会议,相关人员都能受邀参加,团队给大家展示迭代成果,记录反馈形成新的story


5、回顾会议:项目团队对本期迭代做总结,发现不足


五、配置管理和软件测试

1、V模型

明确的标注了测试过程中存在的不同类型的测试,并且清楚的描述了测试阶段和开发过程对应关系


单元测试和集成测试:检测程序的设计是否满足软件设计的要求


系统测试:检测系统功能,性能的质量特性是否满足系统要求的指标


验收测试:是否满足用户需求


缺点:仅仅把测试作为编码之后的一个阶段 失去错误补救机会


2、W模型

开发测试同时进行,保证前期问题及时解决


缺点:测试和开发保持线性的前后关系,不支持敏捷开发,不拥抱变化



扫描二维码推送至手机访问。

版权声明:本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:luxd@aliyun.com,感谢支持理解。


本文链接:https://luxd.cc/post/74.html

“软件测试基本概念” 的相关文章

什么是黑盒测试?有什么?

什么是黑盒测试?有什么?

1.黑盒测试也称功能测试或数据驱动测试,也叫基于需求规格说明书的测试;2.把程序看作一个不能打开的盒子,不关心软件内部只关心输入输出,针对软件界面和软件功能进行测试;3.黑盒测试要依据是需求文档;4.黑盒测试用例设计方法有:1.等价划分法;2.边界值分析法;3.错误推测法;4.场景法;5.因果图法;...

软件测试(基础知识)

软件测试(基础知识)

一、软件测试的生命周期软件测试的生命周期:需求分析——测试计划——测试设计,测试开发——测试执行——测试评估需求阶段:测试人员了解需求,对需求进行分解,得出测试需求计划阶段:根据需求编写测试计划 / 测试方案设计阶段:测试人员适当了解设计,进而设计编写一部分测试用例测试阶段:根据测试用例和计划执行测...

测试人员如何高效进行数据库备份?

测试人员如何高效进行数据库备份?

测试工程师在测试软件的过程中,不仅需要在界面上操作,还需要检查数据库中的数据是否正确。从而在软件出问题时,能够定位问题的原因。所以,测试人员需要经常进行数据库操作。在数据库操作时,测试人员最害怕的就是数据库中的数据因为“手滑”导致数据丢失。如果丢失,严重的话,会给公司造成损失;即使不严重,也会让公司...

如何对人工智能软件进行冒烟测试?

如何对人工智能软件进行冒烟测试?

我们在进行普通软件测试的时候,第一步是要进行冒烟测试,那么在测试人工智能软件的时候第一步是要做什么呢?其实同样是要做冒烟测试,本文就通过两步给大家介绍怎样做AI软件的冒烟测试一、第一步------------了解冒烟测试的作用目标掌握冒烟测试在软件测试中的作用步骤1.开发提测软件版本2.测试根据冒烟...

三分钟教会你如何编写完整的测试用例

三分钟教会你如何编写完整的测试用例

对于新人入门而言.大家可能总感觉测试的用例设计不是很合理.接下来简单跟大家聊聊如何在工作中设计测试用例,让自己的工作效率能快速提高对于测试一套完整的测试用例,我们在书写过程中需要对用例都从下列五个维度进行考虑1.测试计划首先,根据用户需求报告中关于功能要求和性能指标的规格说明书,定义相 应的测试需求...

什么样的项目适合自动化?

什么样的项目适合自动化?

需求稳定,不会频繁变更自动化测试最大的挑战就是需求的变化,而自动化脚本本身就需要修改、扩展、debug,去适应新的功能,如果投入产出比太低,那么自动化测试也失去了其价值和意义;折中的做法是选择相对稳定的模块和功能进行自动化测试,变动较大、需求变更较频繁的部分用手工测试;多平台运行,组合遍历型、大量的...