20171128-构建之法:现代软件工程-阅读笔记
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20171128-构建之法:现代软件工程-阅读笔记相关的知识,希望对你有一定的参考价值。
第十三章-软件测试
基本名词解释及分类:
Bug:软件的缺陷;
Test Case:测试用例;
Test Suite:测试用例集;
Bug可分解为:症状【Symptom】:即从用户的角度看,软件出了什么问题;
程序错误【Fault】:即从代码的角度看,代码的什么错误导致了软件的问题;
根本原因【Root Cause】:错误根源,即导致代码错误的根本原因;
按测试设计的方法分类:
黑箱【Black Box】:指的是在设计测试的过程中,把软件系统当作一个“黑箱”,无法了解或使用系统的内部结构及知识;
白箱【White Box】:指的是在设计测试的过程中,设计者可以“看到”软件系统的内部结构,并使用软件的内部结构和知识来选择测试数据及具体的测试方法;
按测试的目的分类:
功能测试:
Unit Test:单元测试----在最基本的功能 / 参数上验证程序的正确性;
Functional Test:功能测试----验证模块的功能;
Integration Test:集成测试----验证几个互相有依赖关系的模块的功能;
Scenario Test:场景测试----验证几个模块能否完成一个用户场景;
System Test:系统测试----对于整个系统功能的测试;
Alpha / Beta Test:外部软件测试人员(Alpha / Beta测试员)在实际用户环境中对软件进行全面的测试;
非功能测试【Non-functional Requirement】(服务质量需求【Quality of Service Requirement】):
Stress / Load Test:眼力测试----测试软件在负载情况下能否正常工作;
Performance Test:效能测试----测试软件的效能;
Accessibility Test:可访问性测试----测试软件是否向残疾用户提供了足够的辅助功能;
Lcalization / Globalization Test:本地化 / 全球化测试;
Compatibility Test:兼容性测试;
Configuration Test:配置测试----测试软件在各种配置下能否正常工作;
Usability Test:易用性测试----测试软件是否好用;
Security Test:软件安全性测试;
按测试的时机和作用分类:
测试“烽火台”、不同的测试方法;
各种测试方法:
1.单元测试和代码覆盖率测试;
2.构建验证测试【Build Verification Test, BVT】:基本功能能否使用;
3.验收测试【Acceptance Test】;
4.“探索式”的测试【Ad hoc Test】;
5.回归测试【Regression Test】:验证修复的Bug有没有再次出现;
6.场景 / 集成 / 系统测试:各模块连接是否正常;
7.伙伴测试【Buddy Test】;
8.效能测试【Performance Test】:软件在设计负载内能否提供令用户满意的服务质量;
涉及两个概念:1.设计负载;2.令用户满意的服务质量;
现实的环境两方面:1.现实的静态数据;2.现实的动态数据;
9.压力测试:增加负载的两个方面----1.沿着用户轴延长;2.沿着时间轴延长
10.内部 / 外部公开测试;
11.易用性测试;
12.“小强”大扫荡【Bug Bash】;
第十四章 质量保障
1. 软件的质量
定义: 软件产品在规定条件下满足规定和隐含需求的能力(Capability of software product to satisfy stated and implied needs under specified condition) 或
软件产品满足既定需求的程度;然而,质量取决于那些既定的需求准确地代表利益相关者的需求、欲望和期望的程度。(The degree to which a software product meets established requirements;however,quality depends upon the degree to which those established requirements accurately represent stakeholder needs,wants,and expectations)
软件质量=程序质量+软件工程质量
2. 程序的质量
体现 : 软件外在功能的质量
3. 软件工程的质量
体现: 1.软件开发过程的可见性(Visibility)
2.软件开发过程的风险控制(Risk Manangement)
3.软件内部模块,项目中间阶段的交付质量,项目管理工具的因素
4.软件开发成本的控制(Cost Control)
5.内部质量指标的完成情况(Internal Benchmarks)
4.软件工程的质量衡量
CMMI(Capacity Maturity Model Integrated,能力成熟度模型集成)
CMMI实施方法:1.连续式:主要是衡量一个企业在某一项目的管理能力。
2.阶段式:主要是衡量一个企业的成熟度。
5.质量的成本
1.预防(Prevention)
2.评审(Appraisal)
3.内部故障(Internal Failure)
4.外部故障(External Failure)
5.流程分析改进(Process Enhancement)
6.提高职业技能(Enhance Professional Skills)
7.投资软件工具(Invest in Software Tools)
以上是关于20171128-构建之法:现代软件工程-阅读笔记的主要内容,如果未能解决你的问题,请参考以下文章