一. 软件概念
1.1软件的生命周期
项目计划阶段:确定软件开发的总体目标,通过市场调研给出功能、性能、接口等方面的设想以及项目的可行性分析,同时对项目开发使用的资源、成本、进度做出评估,制定实施计划(项目一级计划)
需求分析阶段:需求分析人员和用户共同对软件需要实现的各个功能进行详细的分析并给与确切的描述,编写软件需求说明书(SRS-software requirements specification)
软件设计阶段:架构师和系统分析人员根据需求分析的结果,对整个软件进行系统架构的设计,编写概要设计书(high level design HLD)
再由数据库设计员和开发人员根据需求说明书和概要设计说明书进行系统数据库设计以及编写详细设计说明书(low level design LLD)
程序编码阶段:把软件设计结果转换为计算机可运行的代码,使用RDBMS工具简历数据库。
软件测试阶段:测试人员来检验软件是否符合客户的需求,是否达到质量标准。
一般分为:单元测试、集成测试、系统测试、验收测试
运行与维护阶段:软件生命周期中最长的阶段。软件错误、系统升级、增加功能、提高性能。
1.2软件体系结构
c/s结构:客户端/服务器结构
b/s结构:浏览器/服务器结构
a/s结构:通过设置应用服务器,将关键性的业务软件集中安装并集中安装并发布,客户端可完全在服务器上执行所需要的应用。
二.软件缺陷
2.1软件缺陷种类
遗漏,错误,冗余,不满意
2.2软件缺陷分级
三.软件测试基本概念
3.1软件测试的发展
3.2软件测试的目的
证明;检测;预防
3.3软件测试原则
追溯用户需求
测试尽早介入
测试无法穷举
避免开发者自测
群集线性
杀虫剂悖论(要经常更换测试用例)
四.软件测试模型
4.1 W模型
4.2 V模型
4.3 H模型
测试准备(测试需求分析,测试计划,测试设计,测试用例,测试验证等)
测试执行(测试运行,测试报告,缺陷分析,回归测试等)
4.4 X模型
4.5 敏捷测试
五.软件研发模型
瀑布模型
快速原型模型
螺旋模型
RUP模型
敏捷模型
六.软件测试用例书写思路
5C原则:准确,清晰,简洁,完整,一致
用例编号;所属模块;用例标题;用例优先级;前提条件;测试数据;操作步骤,预期结果,用例状态