- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件测试技术 软件测试定义 使用人工和自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清楚预期结果与实际结果之间的差别。 ------------在IEEE软件工程标准术语 软件测试的目的 测试是程序的执行过程,目的在于发现错误 测试是为了证明程序有错,而不是证明程序无错误 一个好的测试用例在于能发现至今未发现的错误 一个成功的测试是发现了至今未发现的错误的测试 -------Grenford J. Myers 测试是以评价一个程序或者系统属性为目标的任何一种活动,测试是对软件质量的度量 ------------Bill Hetzelt 软件测试的目的 以最少的人力、物力、时间找出软件中潜在的各种错误和缺陷,通过修正错误和缺陷提高软件质量,回避潜在的软件错误和缺陷给软件造成商业风险。 通过分析测试过程中发现的问题可以帮助发现当前开发工作所采用的软件工程的缺陷,以便进行软件过程改进,同时通过测试结果的分析整理,可修正软件开发规则,并为软件可靠性分析提供依据。 软件测试的目的 评价程序或系统的属性,对软件质量进行度量和评估,以验证软件的质量满足用户的需求,为用户选择接受软件提供有力的依据。 软件测试的原则 软件测试是证伪而非证真 软件测试完成并不能说明软件已经不存在问题了。 尽早地和不断地进行软件测试 软件开发的每个环节都可能产生错误 软件开发每前进一步,发现和修复软件缺陷的代价平均要增长10倍。 重视无效数据和非预期使用习惯的测试 软件产品中突然暴露出来的许多问题常常是当程序以某种非预期的方式运行导致的。 软件测试的原则 程序员应避免检查自己的程序 人们具有一种不愿意否定自己的自然性心理 充分注意测试中的群集现象 经验表明,测试后程序中残存的错误数目与该程序中已发现的错误数目成正比 用例要定期评审,适时补充修改用例 测试用例多次重复使用后,其发现缺陷的能力会逐渐降低。 软件测试的原则 应当对每一个测试结果做全面检查 这是一条最明显的原则,但常常被忽略。 遗漏缺陷 测试现场保护和资料归档 出现问题时要保护好现场,并记录足够的测试信息,以备缺陷能够复现。 妥善保存测试计划,测试用例,出错统计和最终分析报告,为以后产品升级测试提供足够的价值信息。 软件测试的原则 软件测试的经济性原则 软件测试是保证软件质量的重要环节 穷尽测试是不可能的 根据程序的重要性及故障发生的损害程度来确定测试有限级 做好测试策略,使用尽可能少的测试用例发现尽可能多的软件缺陷 软件测试的对象 软件测试并不等于程序测试。软件测试应贯穿于软件定义与开发的整个期间。 需求分析、概要设计、详细设计以及程序编码等各阶段所得到的文档,包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,都应成为软件测试的对象。 为把握软件开发各个环节的正确性,需要进行各种确认和验证工作。 验证与确认 确认(Validation),是在产品交付用户之前进行的深入细致的评定,它的目的是确定整个产品是否满足规格说明。 需求规格说明的确认 程序的确认 (静态确认、动态确认) 验证(Verification),确定某阶段是否正确完成的过程,在每阶段结束时进行 -----IEEE 610.12,1990:软件工程术语表 验证与确认 验证(Verification) 在生命周期的每个阶段,通过测试和分析,确定所考查阶段的需求是否满足前一阶段的输出以及本阶段的输出是否实现了本阶段的需求的活动。 确认(Validation) 通过测试和分析,表明产品在各个方面符合规定需求的一种证明行为 。 ---------EN50129.2003 软件的验证和确认与软件质量保证的关系 验证和确认不同于软件质量保证,验证和确认是一个系统工程过程,采用严格的方法学来评估软件生命周期全过程中的软件产品的正确性和质量,强调产品的完整性和正确性。软件质量保证是一个系统过程,评价过程和产品,通过强调对过程的监视来保证发布产品的质量,强调对标准和程序的依从性。验证和确认关注的是安全和任务关键的工程软件; 软件质量保证关注的是整个工程软件。 验证和确认不能代替软件质量保证,它应该是软件质量保证的补充,它们的工作可能有一些重迭。 测试信息流 测试信息流 软件配置:软件需求规格说明、软件设计规格说明、源代码等; 测试配置:测试计划、测试用例、测试程序等; 测试工具:测试数据自动生成程序、静态分析程序、动态分析程序、测试结果分析程序、以及驱动测试的测试数据库等等。 测试信息流 测试结果分析:比较实测结果与预期结果,评价错误是否发生。 排错(调试):对已经发现的错误进行错误定位和确定出错性质,并改正这些错误,同时修改相关的文档。 修正后的文档再测试:直到通过测试为止。 测试信息流 通过收集和分析
文档评论(0)