当前位置:网站首页>软件测试分类
软件测试分类
2022-08-02 19:24:00 【小 乔】
目录
一、按照开发阶段划分
1、单元测试
是对软件组成单元进行测试,其目的是检验软件基本组成单位的正确性。
测试阶段:编码后或编码前(TDD测试驱动开发);
测试对象:最小模块;
测试人员:白盒测试工程师、开发测试工程师;
测试依据:代码和注解+详细设计文档;
测试内容:单元接口测试、局部数据结构测试、边界测试、路径测试、错误处理等;
Junit框架:
①在pom文件中加入依赖;
②在File——settings——Pluguins搜索Junit并安装;
③开始做单元测试(选中类名,Ctrl+Shift+T——Create Test——Junit4)。
2、集成测试
也称联合测试、组装测试,将程序模块采用适当的集成策略组装起来,对系统的接口及集成后的功能进行正确性检测的测试工作,集成主要目的是检查软件单位之间的接口是否正确。
测试阶段:一般单元测试之后进行;
测试对象:模块间的接口;
测试人员:白盒测试工程师或开发工程师;
测试依据:单元测试模块+概要设计文档;
测试方法:黑百合相结合;
测试内容:
模块之间数据传输(输入输出,参数),
模块之间功能的冲突,全局数据结构,
单个模块的缺陷对整个功能的影响。
3、系统测试
对被测系统进行全面的系统的测试。
测试阶段:集成测试之后;
测试内容:整个系统(功能、界面、性能、安全性、兼容性、可靠性、可移植性);
测试人员:黑盒测试工程师;
测试依据:需求分析与系统;
回归测试:
当系统引入新的代码时i,进行回归测试(出现新功能或修改BUG后,也可用自动化回归);
冒烟测试:
在正式测试之前对系统的主要流程和核心功能进行测试(例如连页面都打不开)(准入原则)。
4、验收测试
验收测试不仅仅对系统进行全面测试,验收文档(开发文档、软件设计文档、需求分析文档、功能使用文档、用户使用手册)纯黑盒测试。
二、按照实施组织区划分
1、α测试
用户或者非测试和开发人员请到开发现场进行测试,时间比较集中,开发现场好沟通产品的问题。
2、β测试
用户在实际使用环境进行测试,用户测试的结果更接近于实际使用情况的反馈,α测试优先于β测试。
3、第三方测试
介于开发方和用户方之间的组织的测试。
三、按照是否运行划分
1、静态测试
不运行程序,根据需求规格说明书,软件设计文档,程序设计文档等结合程序,查看代码风格、语法、逻辑等是否符合需求。
2、动态测试
写测试用例,运行系统,执行测试用例。
四、按照是否手工划分
1、手动测试
优点:灵活,发散性测试(永远无法被替代);
缺点:量大容易出错。
2、自动化测试
按照预设的条件去执行测试,手机测试结果,设置正常验证和异常验证。
接口自动化:jmeter/postman;
性能自动化:loadrunner;
自动化的前提:项目的功能要相对稳定;
自动化的价值:脚本的重复使用率(利用率)越高,自动化价值越高。
五、按照是否查看代码划分
1、黑盒测试
不关注程序内部具体实现,只关注功能的输入输出是否满足需求。
2、白盒测试
关注功能内部程序的实现逻辑,结构,语法等。
方法:
语句覆盖法、循环覆盖法、路径覆盖法、逻辑覆盖法(判定,条件,判定组合,条件组合覆盖)。
3、灰盒测试
介于白盒和黑盒之间的测试。(集成测试)
六、按照地域划分
1、软件国际化测试(日期、货币等)
2、本地测试
边栏推荐
- Go----Go 语言快速体验之开发环境搭建及第一个项目HelloWord
- J9数字货币论:识别Web3新的稀缺性:开源开发者
- JVM内存和垃圾回收-04.程序计数器(PC寄存器)
- MySQL安装时一直卡在starting server
- geoserver+mysql+openlayers问题点
- Based on OpenGL glaciers and firebird (illumination calculation model, visual, particle system)
- 详解卡尔曼滤波原理
- Fetch 请求不转换BLOB正常显示GBK编码的数据
- 分享一个 web 应用版本监测 (更新) 的工具库
- 遇上Mysql亿级优化,怎么办
猜你喜欢
7.25 - 每日一题 - 408
ShardingSphere-proxy +PostgreSQL实现读写分离(静态策略)
【心理学 · 人物】第一期
A Review of Nature Microbiology: Focusing on the Algae--Ecological Interface of Phytoplankton-Bacteria Interactions
ShapeableImageView 的使用,告别shape、三方库
EasyCVR平台通过国标GB28181接入柯达NVR显示注册失败,该如何解决?
程序员也许都缺一个“二舅”精神
Caldera(二)高级实战
2022-07-26
el-tree渲染大量数据的解决方案(不通过懒加载)
随机推荐
Compose主题切换——让你的APP也能一键换肤
腾讯云孟凡杰:我所经历的云原生降本增效最佳实践案例
golang刷leetcode动态规划(11)不同路径
7.25 - 每日一题 - 408
实战:10 种实现延迟任务的方法,附代码!
光源控制器接口定义说明
脑机接口003 | 马斯克称已实现与云端的虚拟自己对话,相关概念股份大涨
日志框架学习
元宇宙001 | 情绪无法自控?元宇宙助你一臂之力
Detailed explanation of common examples of dynamic programming
分享一个 web 应用版本监测 (更新) 的工具库
ALV报表学习总结
J9数字货币论:识别Web3新的稀缺性:开源开发者
软考 ----- UML设计与分析(下)
TPAMI2022 | TransCL:基于Transformer的压缩学习,更灵活更强大
7.22 - 每日一题 - 408
Unity 打包和切换平台|Build Settings窗口介绍
【LeetCode】1374. 生成每种字符都是奇数个的字符串
清除浮动与BFC
golang刷leetcode 经典(13) 最小高度树