什么是软件测试:
使用人工和自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果的差距。
两个依据:需求,测试用例
两种方法:手动,自动
一个对比:预期结果和实际结果的对比
2、软件测试的意义和价值
测试不仅要发现问题,尽早发现问题
测试意义:
初期:尽量发现多 bug
中期:尽量早发现 bug
后期:预防 bug(后期→统计分析→bug 产生原因→方案→实施)
软件测试基本流程图:
2、测试过程
内部测试三大阶段
外部测试:
使用验收测试的原因
1. 内部测试只能模拟用户使用却不能代替用户使用
2. 由于专业不同业务背景不同无法模拟用户使用的习惯
3. 测试人员和用户对产品的理解可能不同
验收测试:(在系统测试之后)
α测试:由用户组织一部分人在开发环境下来对产品进行测试 如网游的内侧
β测试:所有系统使用者都可以参加的测试(在实际使用环境下) 如网游的公测
回归测试:
回归测试可以发生在任何一个阶段
分为完全恢复和选择回归
3、测试方法
黑白灰测试对象图
4、软件质量
什么是软件质量
质量:确定一个实体的特性满足需求的程度
内部质量:软件研发过程中,评价的软件质量
外部质量:软件上市后,用户评价的质量
过程质量:评价软件研发中每个过程的质量
软件质量的三个层次
⑴流程质量,领导关注 ⑵产品质量 测试工程师关注 ⑶使用质量 用户关注
质量要素:
质量铁三角 :技术 流程 组织
1)技术: ①人的技术
②工具的技术
2)组织:支持(对技术的支持)
3)流程:有规律的步骤
6 大特性 7 27 个子特性 O ISO 国际标准组织 CMM/CMMI ( Capability maturity model)能力程度模型
CMMI 把企业分为 5 5 个等级
过程能力等级 特点
1. 初始级 软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决
于个人努力。管理是反应式的。
2. 可管理级 建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的
过程纪律,能重复早先类似应用项目取得的成功经验。
3. 已定义级 已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标
准软件过程。所有项目均使用经批准、剪裁的标准软件过程来开发和维护
软件,软件产品的生产在整个软件过程是可见的。
4. 已管理级 分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量
的理解与控制。管理有一个做出结论的客观依据,管理能够在定量的范围
内预测性能。
5. 优化管理级 过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。
5、缺陷管理