软件生命周期
计划---设计---需求分析---编码---测试---运行---评价
需求来源:
市场调研
客户要求
设计:
HLD 概要计划说明书
LLD 详细计划说明书
测试与参照:
单元测试 LLD
集成测试 HLD
系统测试 SRS
软件研发模型
瀑布模型,原型模型,增量模型,迭代模型,敏捷模型
软件测试的目的
1.被测对象与需求间的差异
2.发现并解决缺陷
3.提高产品质量
4.积累经验,预防缺陷,降低产品失败
软件测试原理
1.证明软件存在缺陷
2.不可进行穷尽测试
3.测试要尽早介入,尽早启动
4.存在缺陷集群现象
5.杀虫剂悖论
6.不同测试依据测试背景不同
7.不存在缺陷的谬论
单元测试、集成测试和系统测试的区别
测试对象不同
单元测试:对于内部数据、逻辑控制和异常处理等
集成测试:接口与接口间的数据传递,模块间的整体功能
系统测试:对需求的符合程度
方法不同:
相对应为白、灰、黑
判断不同:
参照LLD、HLD、SRS
α测试:用户在开发环境下测试
β测试:用户在实际情况下测试
白盒测试
根据内部结构设计用例,可完全不顾程序整体的功能
黑盒测试基于规格的测试
静态分析术
考虑程序是否满足编码规则,语法上是否有一致性和完整性
考虑文档是否规范、准确、便于查阅
考虑程序和文档间的一致性
测试模型
V模型---W模型---X模型---H模型---敏捷模型(X模型提出了探索性测试)
软件测试类型
性能测试、功能测试、容量测试、负载测试、压力测试、
稳定性测试、可用性测试、GUI测试、兼容性测试、安全性测试、
异常测试、文档测试、卸载与安装测试、接口测试。
性能测试相关指标
响应时间、业务成功率、CPU占用率、内存占用情况、硬盘读写情况、并发用户量。
软件测试流程
在测试设计阶段,由PM评审需求说明说,提出其中的问题,编写测试计划;
在测试计划阶段,由PM进行测试需求分析确定测试项、测试子项,确定测试方案;
在测试实现阶段,由测试工程师设计测试用例,搭建测试环境;
在测试执行阶段,由测试工程师执行测试用例,提交缺陷报告,进行回归测试,优化测试用例确认缺陷是否被解决,最后由PM对整个测试进行总结。
缺陷类型
遗漏---错误---额外实现---不满意
缺陷的相关属性
缺陷ID---缺陷标题---缺陷所属模块---缺陷严重程度---缺陷优先级---可再现性---发现人---缺陷状态
缺陷报告单状态
New---Open---Fixed---Closed---Reopen---Postpone---Rejected---Duplicate---Abandon
------------------------------------------------------推迟----------拒绝缺陷---重复缺陷---挂起
网友评论