软件测试定义:
一个过程 ,只是活动之一(计划,设计,实施,执行),通过人工测试或借助工具,检验其 计算机代码是否满足规定需求,完成了其应该 完成 的功能,不执行 其不 该有的操作。
测试目的: 发现缺陷~预防缺陷
发现:
预防:预防下一版本 出现的问题
预防 用户使用 软件可能出现的问题
提前 发现开发过程中的问题和风险
提供可以 用于分析的测试结果数据
测试常见误区: 调试:定位问题并修改,结局不可预知,随机,程序员完成 为程序可运行
测试:找问题,结局可预知,有计划有目的,测试员完成 测试 功能可运行
软件测试工作:
1,检视代码,评审开发文档
2,进行测试设计,写作测试文档,测试计划,测试方案,测试用例
3,执行测试,发现软件缺陷,提交缺陷报告,并确认缺陷 最终得到修正
4,通过测试度量软件质量
软件生命周期:
计划~需求分析~设计~编码~测试~运行~评价
计划: 功能,性能 要求
需求: 需求来源 针对产品 ~市场调研
针对项目 ~客户要求
设计: 概要设计 (HLD)在设计阶段把各项需求转化成 相应的体系结构,每一部分是功能明确的模块(例如 加减乘除五个模块,加法模块包含 5个函数:加法主函数,十进制,八,二,十六,主函数调用后四个函数,)
详细设计 (LLD)对每一模块要完成的工作进行具体的描述 (例如:加法主函数的流程图)
编码:
测试:
单元测试:LLD(详设)对每一个函数进行测试
集成测试:(HLD)概设 对函数与函数的集成,模块与模块的集成进行测试
系统测试:对每一个功能,性能需求进行测试
软件研发相关因素 : 人员 过程 (决定作用) 工具 (辅助作用)
软件项目组成员:分析人员,设计人员,开发人员,测试人员,配置管理人员,SQA(软件质量保证)
配置管理人员:所有开发文档,产品由配置团队来进行管理
项目组架构:开发 ~SQL~测试~配置管理(并列关系)
软件研发组织 和 流程:
瀑布模型 :应运最为广的一种模型,也是最容易理解和掌握的模型,缺陷是线性过程 增加开发风险,在结果测试阶段才能发现缺陷。
螺旋模型: 贯穿过程,四象限,需求不明确,周期长,
RUP流程
IPD流程: 适合产品研发,(长虹),跨部门,跨系统协作