软件测试基本理论知识串讲
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件测试过程
软件和软件测试
1.软件的定义
软件是计算机系统中与硬件相互依存的另一部分他是包括程序和文档的完整集合
2.按功能划分
系统软件支撑软件应用软件
按规模划分
小型10下中性10-100 大型100上
3.技术特点划分
业务软件
科技计算软件(图形计算)
嵌入式软件
实时软件×火灾自动报警系统
个人计算机软件
人工智能软件
4.软件的特点
逻辑实体
软件生产和硬件的生产不同
软件运行和使用没有机械磨损和老化问题
开发和运行对计算机系统有一定以来
5.概念
市委了发现错误而执行程序的过程
应关心程序的效率和鲁棒性等因素
艰险软件是否满足规定的需求
弄清与其与实际结果之间的差别
6.软件测试的定义
使用人工和自动手段来运行或测试某个系统,检测他是否满足规定的需求或弄清与其结果与实际结果之间的差别
7.软件测试活动一般包括
制定测试计划--设计测试用例--实施测试(提交缺陷报告)--测试总结
8.测试和调试的区别
测试运行软件,其该功能不符合需求说明的,一般由测试人员完成
调试一般由开发人员来完成,检查其编写的代码有没有编写错误
9.缺陷defect
不满用户需求
10.产生缺陷的原因
人员交流
文档不全
需要不断变化
参与人员过度自信
陈旭设计本身有错误
软件复杂度大
工期短任务重时间压力大
11.识别缺陷的依据
文档
需求说明手
设计说明书
用户手册
了解软件行业标准行业北京同类软件
通过沟通来确认和识别缺陷
12.再现与优化缺陷的方法
不要想当然的接受任何假设
查找依赖关系和竞争条件的问题
与压力和符合相关的边界条件软件缺陷内存泄露数据一处缺陷发生有一定的前提条件状态缺陷仅在特定软件状态中显露
考虑资源依赖行
淫奸失效问题
软件失效问题
从阅读缺陷报告起提高写缺陷
13.有效记录缺陷的方法
保证重现
分析故障
必要步骤
方便阅读
尽量简单
语气
值得注意的经验
14.缺陷报告的用途
记录缺陷缺陷分类缺陷跟踪
15.为何要尽早报告缺陷?
越早找到bug,能修复bug的时间就越多。
16是不是所有的缺陷都会被修复?
17缺陷报告的分类
18按缺陷所处的状态分类
待确认的,新提交的,已分配的,问题未解决的,待返测的,待归档的,已归档的
19按处理意见分类
已修改的,不是问题,无法修改,以后版本解决,保留,重复,无法重现
20软件生命周期
可行性分析需求分析设计编码测试软件发布维护淘汰
21瀑布模型:计划—需求分析—设计—编码—测试—运行维护
22螺旋模型:需求定义—风险分析--工程实现—评审
极限编程敏捷编程
23编写测试计划
项目名称目的背景范围测试策略测试内容人员分配术语测试进度需要资源风险和问题参考手册提交文档
测试计划的制定
尽早制定
所有人要通过
使用过程中对测试计划进行必要监测
测试项目是否按照计划执行
测试计划是否需要调整或修改
测试计划的最终用户
24软件开发和测试流程
需求阶段根据需求说明书生成系统测试方案
设计编码阶段--根据概要设计-- 生成集成测试方案--单元测试方案
集成系统验收阶段-- 通过产品综合评价
测试总结文档
测试过程和流程的区别
25V模型
用户需求验收测试
需求分析与系统系统测试
概要设计说明书集成测试
详细设计说明书单元测试
编码
H W模型
26软件测试的阶段
单元测试--集成测试-- 确认测试(软件配置审查有效性测试)-- 系统测试--验收测试
27单元测试
好的单元测试会在产品开发的阶段发现大部分的曲线并且修改他们的成本也很低
什么时候做修改都要进行回归测试
选择正确测试策略
经过单元测试的系统集成过程会简化
后期阶段曲线的发现和修改会更加困难并消耗大量的时间和开发费用
桩模块stub 和驱动模块driver
28集成测试
非增式集成方法
增式集成方法
自顶向下测试
自底向上测试
29软件测试的方法和策略
1.静态测试不用写测试用例能使用自动化工具静态测试内容
动态测试
2黑盒测试和白盒测试
3手工测试与自动测试
自动测试有点
节约大量时间
处理精确和事务
大数据量的事务
并发事务
自动测试局限
产品本身不稳定
开发维护脚本工作量大费用高
人才缺乏
4冒烟测试
5回归测试
其它的测试方法
功能测试性能测试压力测试负载测试易用性测试安装测试界面测试配置测试文档测试兼容性测试安全性测试恢复测试
软件质量和评审