软件测试理论学习(一)
2016-12-14 21:43
295 查看
一、软件测试
1.1 软件测试的定义
IEEE给出的测试定义:在特定的条件下运行系统或者构件,观察或者记录结果,对系统某个方面做出评价。(测试就是评错)分析某个软件项以发现和现存的和要求的条件差别(即错误并评价此软件项的特性)。(测试是做度量)
1.2 软件测试的特征
可以从需求开始,而不仅仅是代码既是静态活动也是动态活动
用来预防失效
有助于在软件生命周期中尽早发现问题以降低修复缺陷所需要的成本
过程中应创建可重用的测试件
1.3 软件测试的目的
Glenford J.Myers提出:测试是程序的执行过程,目的在于发现错误。
测试是为了证明程序有错,而不是证明程序无错误。
一个好的测试用例在于发现至今未发现的错误。
一个成功的用例是至今未发现的错误的测试
Bill Hetzelt在《软件测试完全指南》中指出:
软件测试的目的不仅仅是为了发现软件缺陷与错误,同时也对软件进行度量和评估,提高软件质量。
现对软件测试的目的总结为以下三点:
- 以最少的人力、物力、时间找出软件中潜在的各种错误和缺陷,通过修正错误和缺陷提高软件质量,回避潜在的软件错误和缺陷给软件造成的商业风险。
- 通过分析测试测试过程中的发现的问题可以帮助发现当前开发工作所采用的软件过程的缺陷,以便进行软件过程改进;同时通过对测试结果的整理与分析,可修正软件开发规则,并为软件可靠性分析提供相关的依据。
- 评价程序或者系统的属性,对软件质量进行质量和评估,以验证软件的质量满足用户的需求,为用户选择、接受软件提供有力的依据。
软件测试的目的关键是工程性的,以发现错误为目的。
1.4 软件测试的关键问题(原则)
软件测试是证伪而非证真尽早地和不断地进行软件测试
重视无效数据和非预期使用习惯的测试
程序员应该避免检查自己的程序
充分注意测试中的群集现象
用例要定期评审
应当对每一个测试结果做全面检查
测试现场保护和资料归档
软件测试的经济型原则
二、软件质量保证
2.1 软件质量保证定义
软件质量保证是贯穿软件项目整个生命周期的有计划和有系统的活动,经常针对整个项目质量计划执行情况进行评估,检查和改进,向管理者、顾客或者其他提供信任,确保项目质量与计划保持一致。确保软件项目的过程遵循了对应的标准以及规范要求且产生了合适的文档和精确反应项目情况的报告,其目的是通过评价项目质量简历项目达到质量要求的信息。软件质量保证 主要包括评审项目过程、审计软件产品,就软件项目是否真正遵循已经制定的计划、标准和规程等,给管理者提供可视性项目和产品可视化的管理报告。
三、 软件测试与软件质量保证
软件测试是获取度量值的一种重要手段。评价指导(依据)度量,度量指导(依据)测试。
相关文章推荐
- 对int char 输入遇到的问题 的探讨
- nyoj 71
- IntelliJ IDEA 使用心得与常用快捷键
- jQuery on()
- MPI_Bcast函数的用法
- UITableView判断reloadData结束(iOS)
- Java基础 - 线段树C/C++版(Segment Tree)三
- MyBatis:获取插入记录的自增主键
- Dialog System 总结
- [LeetCode]Binary Tree Right Side View
- tp框架如何锁表,实现不能高并发的下单
- 【Android休眠】之Android休眠机制
- java.awt.headless
- java需要掌握的知识
- 编译技巧
- MySQL绿色安装版初始化安装方法
- JAVABEAN
- 算法导论-----动态规划是什么
- 禁用cookie如何使用session
- bzoj 2286: [Sdoi2011消耗战 虚树+树形dp