|
目录???????
简述
2.1 无法对软件进行完全的测试
2.1.1 无法进行完全测试的原因
2.1.2 结论?
2.2 为什么软件测试是个复杂的活动
2.2.1 软件测试的复杂性
2.3 软件测试的经济性
2.3.1 注意点
2.3.2 软件测试的工作原则?
2.3.3 最佳测试量?
2.3.4 影响测试量的主要因素
2.4 软件测试方法
2.4.1 软件测试方法的分类
2.4.2 从三个角度分析,对方法进行分类
2.4.3 (动/静)态测试方法的具体理解
2.4.5 人工测试和自动化测试
简述
本章先简单介绍了软件开发过程的三个阶段:定义阶段、开发阶段、检验交付与维护阶段,软件开发过程中的活动与角色,软件开发的开发模型有线性顺序模型、原型模型、快速开发模型、演化软件过程模型等,软件开发与软件测试的关系等。并介绍了软件测试的七条基本原则,软件测试方法常用有:静态测试、动态测试、白盒测试、黑盒测试、灰盒测试、人工测试、自动化测试、模型检测、胃烟测试、随机测试等。最后介绍了软件测试的五种过程模型...
2.1 无法对软件进行完全的测试
2.1.1 无法进行完全测试的原因


??
该例也只是对有效的例子进行了测试,对不符合要求的测试用例并没有验证。即软件测试,不仅要测试所有合法的输入是否给出了正确的结果,也要对那些不合法的但是有可能的输入进行测试。
用 “白盒测试” 来说明第二点,“白盒测试” 是穷举路径的测试。

上述例子虽然循环次数不多,但是路径数太多了,导致无法对软件进行完全的测试。

2.1.2 结论?
·测试不能证明一个软件是正确的,只能证明其是错误的。
·无法对软件进行完全的测试。 ?
2.2 为什么软件测试是个复杂的活动
2.2.1 软件测试的复杂性

软件测试关键是要进行正确的判断和合理的取舍,根据风险分析决定哪些故障必须修复,哪些故障可以不修复,通常,不能修复的软件故障有如下几条:
· 没有足够的时间修复(可能是软件功能太多或者进度问题) · 修复的风险较大 · 不值得修复(主要指不常用的功能中的一些故障或对运行影响不大的故障) · 可不算作故障的一些缺陷 ?
2.3 软件测试的经济性
2.3.1 注意点
a. 要根据程序的重要性和可能故障造成的损失来决定测试要达到什么样的程度。 b. 要认真研究测试策略,一定要用尽可能少的测试用例发现尽可能多的测试缺陷。
2.3.2 软件测试的工作原则?

2.3.3 最佳测试量

2.3.4 影响测试量的主要因素

2.4 软件测试方法
2.4.1 软件测试方法的分类
单元测试 集成测试 确认测试 系统测试 验收测试

2.4.2 从三个角度分析,对方法进行分类
·?从是否需要执行被调程序的角度 分为:

·?从测试是否针对系统的内部结构和具体实现的算法角度 分为:

·?从测试部分的主体的角度 分为:

?*不应过多在意方法的类别,应确实理解每个方法的含义和适用范围
2.4.3 (动/静)态测试方法的具体理解

第一种方法:代码检查(看的是问题的本身,比动态测试更加有效,但耗费的人力和时间也很多)
第二种方法:静态结构分析(主要以图形的方式表示程序的内部结构,比如调用函数)
第三种方法:代码质量度量(一般来说程序的复杂度越高,更容易出错)

动态测试分为: ·?功能确认与接口测试 ·?覆盖率测试 ·?性能分析 ·?内存分析
2.4.4 (黑/白)盒测试方法的具体理解与优劣比较

一般分别用在 系统测试阶段 和 单元测试阶段

2.4.5 人工测试和自动化测试

Tips:自动化测试不可能完全实现自动化,离不开人的智力把控,但能替代人完成一些繁琐或者不可能通过手工达到的事情,它的优点是在某些方面能提高测试效率,特别是在违规测试和某些性能测试。?
· 总结:在实际测试中,应该综合各种方法集成综合测试
后续补充...
?
|