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 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 软件测试 -- 入门 5 软件测试方式 -> 正文阅读

[开发测试]软件测试 -- 入门 5 软件测试方式

? ? 任其事必图其效;欲责其效,必尽其方。(承担工作,必定要考虑工作成效;想要求得工作成效,必定要用尽多方法尝试,以求最佳。)?-- 欧阳修

? ? 方法:为达到某种目的而采取的途径、办法。 --?百度汉语

1.?静态测试

? ? 静态测试,指不执行测试程序,基于系统源码,参考各类标准、说明书和文档(如,开发语言手册、编码规范、需求规格说明书、设计说明书),结合静态测试执行者开发经验,通过审阅、检查分析源程序的语句、结构、过程、函数、方法,验让并确认系统程序是否存在错误。静态测试可以发现程序逻辑设计和编码错误。一般会提供检查列表供参考,通过工具或人工实现。

  • 工具

? ? >?开发工具编译时完成对代码的基本语法检查
? ? >?编码规则可以借助第三方工具按配置规则进行检查
? ? >?安全检查工具可以对代码的安全性进行静态检查

  • 人工

? ? >?审查(Inspection):开发者提交资料,由专业人员按说明书和标准对代码规则、业务逻辑进行检查
? ? >?走查(Walkthrough):由开发者对代码进行说明,评审参与者根据说明提问并判断代码是否存在缺陷
? ? >?同行评审(PeerReview):由开发者同行执行,参考系统标准,与开发者工作在一起确认代码实现逻辑是否正确、代码是否符合规范要求

? ? 开发者可以通过不断积累的开发经验,形成新的静态测试规则,不断充实检查列表。

2.?动态测试

? ? 动态测试。指执行被测程序,通过系统反馈和表现,将系统执行结果与预期的结果(需求/设计说明)进行比较,确认系统是否满足功能需求要求;同时分析系统执行效率,确认系统是否达到系统非功能需求要求(性能,安全性,易用性,可用性)。

? ? 动态测试需经过,测试用例/场景设计、执行、结果验证、问题跟踪、分析报告4个步骤完成。?

? ? 动态测试按执行方式不同分为人工测试和自动化测试。

  • 人工测试

? ? > 所设计的测试用例/场景的执行由人工完成。通过人为的外部操作(鼠标、键盘、手柄、话筒等)触发系统功能运行,记录系统表现(录屏、截图)和结果,对比预期结果与实际结果以记录、上传、确认、跟踪问题。
? ? >?优势:应对变化响应快,测试方法调整速度快
? ? >?缺势:人会产生疲惫、懈怠,对缺陷的敏感度降低,对反复验证的测试执行速度慢
? ? >?适用:单元测试,功能测试,数据流测试,验收测试;探索式测试,业务测试

  • 自动化测试

? ? >?使用工具模拟人工对系统的操作步骤和流程,将原来由人工执行的操作,通过自动化测试程序(录制或开发),由机器按预设的步骤、流程执行,对比预期结果与实际结果,输出执行日志、记录执行结果。
? ??>?优势:执行速度快,过程记录细致(基于自动化测试程序设计),执行过程无偏差
? ? >?缺势:需要掌握开发技能,开发周期长,对系统变化响应慢(需要二次开发)
? ? >?适用:冒烟测试,回归测试,性能测试,安全测试

? ? 无论是人工测试还是自动化测试,测试思想(怀疑?批判?全面?)是测试人员的核心竞争力,对测试人员至关重要。
? ? 测试终极目标是提升软件质量,证明软件系统在设定的、可控的范围内可靠、可信。
? ? 测试的首要任务是发现问题,在系统实际运行之前发现问题,在用户发现问题之前发现问题。
? ??工具辅助测试执行,目标是更加高效的发现问题,善用工具,善于偷懒,善于快乐做事。

3.?白盒、黑盒、灰盒测试

? ? 白盒、黑盒、灰盒测试的区别在于测试执行过程中是否了解程序结构、接触程序源代码。

  • 白盒测试

? ? >?逻辑测试方法。基于对程序结构、内部逻辑及程序源代码的了解,对程序内在的程序结构、函数、方法进行验证,判断程序实现是否满足需求和设计要求。
? ? > 白盒测试从程序结构入手,设计测试用例,覆盖全部程序语句、判定、分支、路径执行,判断程序实现是否满足要求,是否存在缺陷。
? ? >?白盒测试一般由程序设计者或开发者执行,白盒测试更能发现程序深层隐藏的缺陷,特别是架构、安全和性能问题
? ? > Unit测试(单元测试)常使用白盒测试方法,assert断言是常用的单元测试语句
? ? >?常用白盒分为 6?种覆盖方法,设计足够多的用例
? ? ? ?-?语句覆盖,每条语句至少执行一次
? ? ? ?-?判定(分支)覆盖,每个判定(真、假)至少执行一次
? ? ? ?-?条件覆盖,满足每个判定的每一类条件至少执行一次
? ? ? ?-?路径覆盖,覆盖程序所有可能的路径组合
? ? ? ?-?判定/条件覆盖,每个判定、每类条件至少执行一次
? ? ? ?-?组合覆盖,每个判定条件产生结果的所有组合条件至少执行一次

参考,......

  • 黑盒测试

? ? >?系统功能测试方法。不了解系统结构和实现方法,基于需求和设计操作程序执行(后台程序或GUI界面),或完全无序的执行程序,验证系统操作输入后实际结果与预期结果是否一致
? ? >?黑盒测试基于需求规格说明书和系统设计书设计测试用例,覆盖系统功能性和非功能性要求,验证系统功能实现是否正确、输出是否满足定义、界面展示是否完整
? ? >?黑盒测试一般由独立的测试人员完成(没有人心甘情愿的承认自己的程序有问题),更贴近现实环境和用户对程序的操作方式,更易于发现代码层到展示层产生的缺陷
? ? >?黑盒测试执行更直接、更简单,能有效模拟实际场景操作,易用性测试、可用性测试常用黑盒测试模拟实现
? ? >?每次程序更改、更新、提交都需执行黑盒测试,确保程序变动未影响到系统外在表现,称之为回归测试,使用工具可以减少回归测试执行的人工工作量、提高执行效率
? ? >?常见的黑盒测试包括:冒烟测试、猴子测试、走廊测试、功能测试、集成测试、系统测试、易用性测试、场景测试、探索式测试、随面测试、性能测试等

  • 灰盒测试

? ? >?灰盒测试介于白盒测试与黑盒测试之间,即考虑系统实现的内部逻辑,又兼顾系统的外部输入输出表现
? ? >?灰盒测试以需求和设计说明书为基准,同时特别关注详细设计说明书中各函数的定义和实现,通过内部逻辑的了解,设计出更多、更有效的测试用例,提高测试覆盖率
? ? >?灰盒测试兼顾白盒测试的逻辑验证?和?黑盒测试的功能界面验证,比单纯的白盒测试和黑盒测试更加适用和有效。

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2022-09-21 00:58:10  更:2022-09-21 00:58:52 
 
开发: 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/17 22:34:17-

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