当前位置:网站首页>软件测试基础笔记
软件测试基础笔记
2022-08-08 18:49:00 【测试田总】
目录
1、软件测试的分类
2、软件测试的原则
3、软件测试关键问题
1、软件测试的分类
1、按照开发阶段划分
(1)单元测试 - 模块测试,检查每个程序单元能否正确实现详细设计说明中的模块功能等。
(2)集成测试 - 组装测试,将所有的程序模块进行有序、递增的测试,检验程序单元或部件的接口关系。
(3)确认测试 - 证实软件是否满足特定于其用途的需求,是否满足软件需求说明书的规定。
(4)系统测试 - 检查完整的程序系统能否和系统(包括硬件、外设和网络、系统软件、支持平台等)正确配置、连接,并满足用户需求。
(5)验收测试 - 按照项目任务或合同,供需双方签订的验收依据文档进行的对整个系统的测试与评审,决定是否接受或拒收系统。
2、按照测试技术划分
(1)白盒测试 - 通过对程序内部结构的分析、检测来寻找问题。检查是否所有的结构及逻辑都是正确的,检查软件内部动作是否按照设计说明的规定正常进行。
(2)黑盒测试 - 通过软件的外部表现来发现错误,是在程序界面处进行测试,只是检查是否按照需求规格说明书的规定正常实现。
(3)灰盒测试 - 介于白盒测试与黑盒测试之间的测试,关注输出对输入的正确性。
3、按照测试实施组织划分
(1)开发方测试 - 开发方通过检测和提供客观证据,证实软件的实现是否满足规定的需求,在开发环境下,开发方对提交的软件进行全面的自我检查。
(2)用户测试 - 在用户的应用环境中,用户通过运行软件,检测软件实现是否符合自己预期的要求,这里指用户的使用性测试。
(3)第三方测试 - 介于软件开发方和用户方之间的测试组织的测试。
2、软件测试的原则
1、完全测试的不可能性
(1)输出量太大。
(2)输出结果太多。
(3)软件执行路径太多。
(4)软件说明书是主观的,没有客观标准。
2、软件测试是有风险的
(1)把数量巨大的可能测试减少到可以控制的范围。
(2)针对风险做出明智的选择,哪些测试重要,哪些不重要。
3、无法显示潜伏的软件缺陷和故障,可以一直测试,但不能保证软件缺陷不存在
4、充分注意测试中的群集现象,缺陷可能成群出现
(1)程序员问题。
(2)有些软件故障可能只是冰山一角。
5、杀虫剂现象
(1)软件测试越多,对测试的免疫力越强,寻找更多软件缺陷就更加困难。
(2)克服办法 - 在软件测试中采用单一的方法不能高效和完全的针对所有软件缺陷,因此软件测试应该尽可能的多采用多种途径进行测试。
6、其他现象
(1)并非所有的软件缺陷都要修复。
(2)难以描述的软件缺陷。
7、80-20原则
(1)80%的软件缺陷常常生存在软件20%的空间里。
(2)在系统分析、设计、实现阶段的复审工作中能够发现和避免80%的软件缺陷,此后的系统测试能够帮助我们找出剩余缺陷中的15%,最后的5%的软件缺陷可能只有在系统交付使用后用户经过大范围、长时间使用后才会曝露出来。
(3)实践证明80%的软件缺陷可以借助人工测试而发现,20%的软件缺陷可以借助自动化测试能够得以发现。
8、软件测试必须有预期结果,软件缺陷是经过对比而得出来的,没有预期结果的测试是绝不可以的
3、软件测试关键问题
1、测试由谁执行
(1)通常由开发者负责完成第一阶段的代码单元测试,而系统测试则由独立的测试人员或专门的测试机构进行。
(2)按照测试实施组织划分,软件测试可分为开发方测试、用户测试(β测试)、第三方测试。
2、测试什么
(1)软件产品的组成。
(2)软件开发过程中产生的需求分析、概要设计、详细设计以及编码等各个阶段所得到的文档,包括需求规格说明、概要设计说明、详细设计规格说明以及源程序,都是软件测试的对象。
(3)第一阶段,单元测试阶段:在每个模块编写出以后所做的必要测试。
(4)第二阶段,综合测试阶段:即在完成单元测试后进行的测试,如集成测试、系统测试、验收测试等。
3、软件测试中的误区
(1)误区1 - 调试和测试是一样的。
(2)误区2 - 软件测试对象就是程序。
(3)误区3 - 软件测试是测试人员的事情,与开发人员无关。
(4)误区4 - 好的软件质量是通过测试得到的。
(5)误区5 - 把不合格的开发人员安排做测试。
(6)误区6 - 关注于测试的执行而忽略测试的设计。
(7)误区7 - 测试自动化是万能的。
(8)误区8 - 测试是为了证明软件的正确性。
边栏推荐
- Michael Bronstein 系列长文:迈向几何深度学习(之三)——第一个几何神经网络模型
- 数据库学习之库的操作
- Oracle--表
- Research on ORACLE subqueries that lead to inability to push predicates
- Implement the entire process of Mock API with tools
- Fortinet new cloud native protection products launched amazon cloud platform of science and technology
- Oracle - table
- The history of cartoon rendering
- 倒置字符串
- synApps -- Autosave
猜你喜欢
FastDFS distributed file system
Azure Neural TTS continues to be updated to help enterprises develop small language markets
搭建DG导致归档日志量变多问题排查
Geometric g6 will carry harmonyos system, a comprehensive upgrade competitiveness of products
SUSECON 北京议程上新丨8月16日相聚望京凯悦
How to add F4 Value Help to the input parameters of the report in the ABAP report
OpenInfra Days China 2022即将开启,与 openEuler 共话开源技术
ORACLE子查询 导致无法谓词推入的研究
Style Design Principles in Open Office XML Format
制造企业为什么要部署数字化工厂系统
随机推荐
什么是Shell?从小白到入门你只差一个它
leetcode 240.搜索二维矩阵II 分治思想
view, index
LabVIEW报错“仪器IO助手未正确安装”
Transsion Holdings: At present, there is no clear plan for the company's mobile phone products to enter the Chinese market
Monaco-Editor 多人协作 编辑器
3D角色建模师和3D角色动画师哪个更有前景?哪个更适合小白入门?
How to add F4 Value Help to the input parameters of the report in the ABAP report
最长子串(长沙理工大学第十一届程序设计竞赛 离线 做了n天.....崩溃了)
证券开户选哪个券商平台比较好,哪个更安全
关于求最小公倍数的三种常用方法
5 IPOs, Internet home improvement is not as simple as Tubatu thinks
疫情期间闲来无事,我自制了一个按钮展示框特效来展示我的博客
OpenSSH生成的私钥如何在putty中使用?
视图,索引
Laravel 队列消费实例和定时任务添加任务消费
Oracle--表
为啥程序员下班后只关显示器从不关电脑?看看各大网站的答案~
用工具实现 Mock API 的整个流程
Why do programmers only close monitor from none computer after work?Look at the answer ~ each big web site