Chapeter2 软件测试基础课程
1、软件测试的发展过程
1956年调试时期(调试即测试)
1957-1978年论证时期
1978-1982年破坏性测试时期
1983年起,软件测试已经有了行业标准(IEEE829),需要专门的手段和方法,专门的人才和专家来承担
1990年起软件发展迅速,测试行业发生了巨大变化,开始引入专业测试工具
2、软件测试
在规定的条件下对程序进行测试,从而发现问题、并对软件质量进行评估的过程。
3、软件测试的目的
以最少的人力、物力、时间找出软件中潜在的各种错误和缺陷,通过修正各种错误和缺陷,从而提高软件质量,回避软件发布后由于潜在错误和缺陷造成的隐患,以及带来的商业风险
4、软件测试的定义
使用人工和自动化手段来运行或测试某个软件的过程,其目的在于检验它是否满足规定的需求,或是弄清预期结果与实际结果之间的差别。
5、软件测试的原则
1、所有的测试都应追溯到用户需求()
2、应当把“尽早和不断的测试”作为座右铭
3、测试工作应当由独立的、专业的软件测试机构完成
4、Pareto原则,测试发现的错误中80%很可能起源于20%的模块中(二八原则)
5、设计测试用例(测什么、怎么测?)时,应该考虑各种情况
6、对测试出的测试结果,一定要有一个确认的过程(描述缺陷报告)
7、制定严格的测试计划
8、完全测试是不可能的,测试需要终止
9、注意回归测试(指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误)的关联性
10、妥善保存一切测试过程文档
6、软件产品质量模型(ISO/IEC9126)
软件产品质量模型对产品设计时考虑的地方进行了高度概括。
六大特性:
1、功能性:是指软件产品在指定条件下使用时,提供满足明确和隐含要求的功能的能力
2、可靠性:是指在特定条件下使用时,软件产品维持规定的性能级别能力
第一层:设备最好不要出故障
第二层:设备出现故障了,不要影响主要的功能和业务
第三层:如果影响了主要的功能和业务,系统可以尽快定位和恢复
3、易用性:是指用户在指定条件下使用软件产品时,产品被用户理解、学习、使用和吸引用户的能力,即易懂、易学、易用、漂亮好看
4、效率:是指在规定的条件下,相对于所用资源的数量,软件产品可提供适当的性能的能力,通常,效率就是我们常说的产品性能
6、可移植性:是指软件从一种环境(软件、硬件或组织等不同的环境)迁移到另一种环境的能力