IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 软件测试理论 -> 正文阅读

[开发测试]软件测试理论

软件缺陷管理

软件缺陷定义

软件缺陷就是通常说的Bug 它是指在软件中(包括文档和程序)存在的影响软件正常运行的问题

1,软件未达到产品说明书标明的功能

2,软件出现了产品说明书指明不会出现的错误

3,软甲功能未达到产品说明书指明的范围

4,软件未达到产品说明书虽未指出但应该达到的目标

5,软件难以理解,不易使用,运行速度缓慢或者从测试人员的角度最终用户认为不好

软件缺陷产生的原因

1,需求不明确和变更

2,软件结构复杂

3,编码问题

4,项目期限短

5,使用新技术

软件缺陷分类

测试种类---->界面类 ,功能类,性能类,安全类,兼容性类

缺陷严重程度---->严重 ,一般,次要,轻微

缺陷优先级---->立即解决,高优先级,正常排队,低优先级

缺陷发生阶段---->需求阶段缺陷,架构阶段缺陷,设计阶段缺陷,编码阶段缺陷,测试阶段缺陷

软件测试的目的

1,避免软件发布后由于潜在的软件错误和缺陷造成的隐患所带来的的商业风险

2,避免在将来的项目开发和测试中重复同样的错误

3,采用更加高效的测试管理手段,提高软件测试的效率和软件产生的质量

软件测试模型

V模型

左边下降的是开发过程各阶段,与此相对应的右边上升的部分,即各测试过程的各个阶段

?

W模型

W模型是V模型的发展,强调的是测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、功能和设计同样要测试。测试与开发是同步进行的,从而有利于尽早地发现问题。

?

软件测试流程

?

软件测试原则

原则一:测试显示软件存在想缺陷

原则二:穷尽测试是不可能的

原则三:测试尽早介入

原则四:缺陷集群性(2/8原则)

原则五:杀虫剂悖论

原则六:测试活动依赖于测试内容

原则七:没有错误是好是谬论

原则八:程序员不能自测之后就上线

原则九:严格执行测试计划,排除测试的随意性

原则十:应当对每一个测试结果做全面的检查

原则十一:妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便

原则十二:设计测试用例时,应当包括合理的输入数据和不合理的输入数据

原则十三:测试用例应由测试数据和与之对应的预期结果这两部分组成

软件测试分类

?

?

按照测试原理分类

黑盒测试,白盒测试,灰盒测试

黑盒测试:把被测试的软件看做一个黑盒子,不知道盒子里边的结构,只清楚软件的输入数据和输出结果

白盒测试:是一种按照程序内部逻辑结构和编码结构设计测试数据并完成测试的测试方法

灰盒测试:一种基于程序运行时的外部表现同时又结合程序内部结构来设计测试数据的测试方法

按照测试阶段分类

单元测试,集成测试,系统测试,验收测试

单元测试:对一个模块、一个函数或者一个类来进行正确性检验的测试方法

集成测试:将单独的模块按照设计要求组装成为子系统或系统,作为整体进行测试的测试方法

系统测试:将硬件、软件看作一个整体,对系统的功能及性能的总体测试

验收测试:以用户测试为主,或有测试人员共同参与检验软件质量的测试方法

?

按照内容分类

功能测试、性能测试、兼容性测试

功能测试:

界面测试、冒烟测试、回归测试、业务逻辑测试、易用性测试

功能测试:根据产品操作描述和需求文档,测试一个产品的特性和可操作行为是否满足用户的需求的测试方法

界面测试:测试用户界面的功能模块的布局是否符合客户使用习惯,界面操作便捷性,导航简单易懂性的测试

冒烟测试:验证系统的核心功能是否能够正常运行的测试方法

回归测试:指修改了旧代码后,重新进行测试以确定修改没有引入新的错误或导致其他代码产生错误的测试方法

业务逻辑测试:在基本的功能点都已合格的基础上,准备多种测试数据,来驱动各种约束条件下业务流程,确定最终输出的结果是否符合预期的测试

易用性测试:指用户使用软件时是否感觉方便的测试

性能测试:

压力测试、负载测试、并发测试

性能测试:通过自动化的测试工具模拟多种正常的、峰值以及异常负载条件来对系统的各项性能指标进行校验的测试方法

压力测试:通过逐步增加系统负载,测试系统性能的变化,并确定在什么条件下系统性能处于失效状态

负载测试:通过逐步增加系统负载,测试系统性能的变化,在满足性能指标的情况下,系统所能承受的最大负载量的测试

并发测试:是一个负载测试和压力测试的过程,即逐渐增加并发用户数负载直到系统的瓶颈,通过分析资源监控指标等来确定系统并发性能

兼容性测试:

冒烟测试、随机测试、安全性测试、探索性测试、回归测试、Alpha测试、Beta测试

随机测试:根据测试者的经验无需测试用例对软件进行功能和性能抽查的测试方法

安全性测试:通过不同的测试方法,检验程序、网络、数据安全性的测试方法

探索性测试:碰到问题时能随机应变,强调测试人员的主观能动性明确整体的测试计划的测试方法

Alpha测试:俗称内测、α测试。内部环境下的测试,

Beta测试:俗称外测、公测,β测试。生产环境下的测试

按照其他分类:

冒烟测试、随机测试、安全性测试、探索性测试、回归测试、Alpha测试、Beta测试

随机测试:根据测试者的经验无需测试用例对软件进行功能和性能抽查的测试方法

安全性测试:通过不同的测试方法,检验程序、网络、数据安全性的测试方法

探索性测试:碰到问题时能随机应变,强调测试人员的主观能动性明确整体的测试计划的测试方法

Alpha测试:俗称内测、α测试。内部环境下的测试,

Beta测试:俗称外测、公测,β测试。生产环境下的测试

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-09-23 11:45:14  更:2021-09-23 11:45:30 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 0:38:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码