all_uses标准软件测试 软件测试规范标准 - 电脑|办公 - 电脑办公-杀毒安全-网络-V3学习网
微商网
 
 
导航:首页 |电脑|办公|正文

all_uses标准软件测试 软件测试规范标准

时间:2020-08-24 10:34:46
软件测试的目标和准则是什么?有哪些测试方法?测试步骤有哪些具体地讲,测试一般要达到下列目标: 1、确保产品完成了它所承诺或公布的功能,并且所有用户可以访问到的功能都有明确的书面说明------在某种意
作者:

all_uses标准软件测试

软件测试的目标和准则是什么?有哪些测试方法?测试步骤有哪些

具体地讲,测试一般要达到下列目标: 1、确保产品完成了它所承诺或公布的功能,并且所有用户可以访问到的功能都有明确的书面说明------在某种意义上与ISO9001是同一种思想。

产品缺少明确的书面文档,是厂商一种短期行为的表现,也是一种不负责任的表现。

所谓短期行为,是指缺少明确的书面文档既不利于产品最后的顺利交付,容易与用户发生矛盾,影响厂商的声誉和将来与用户的合作关系;同时也不利于产品的后期维护,也使厂商支出超额的用户培训和技术支持费用。

从长期利益看,这是很不划算的。

领测认为接触过的软件产品,很少有向方正这样大大的产品、薄薄的文档。

当然,书面文档的编写和维护工作对于使用快速原型法(RAD)开发的项目是最为重要的、最为困难,也是最容易被忽略的。

最后,书面文档的不健全甚至不正确,也是测试工作中遇到的最大和最头痛的问题,它的直接后果是测试效率低下、测试目标不明确、测试范围不充分,从而导致最终测试的作用不能充分发挥、测试效果不理想。

2、 确保产品满足性能和效率的要求 使用起来系统运行效率低(性能低)、或用户界面不友好、用户操作不方便(效率低)的产品不能说是一个有竞争力的产品。

用户最关心的不是你的技术有多先进、功能有多强大,而是他能从这些技术、这些功能中得到多少好处。

也就是说,用户关心的是他能从中取出多少,而不是你已经放进去多少。

3、 确保产品是健壮的和适应用户环境的 健壮性即稳定性,是产品质量的基本要求,尤其对于一个用于事务关键或时间关键的工作环境中。

另外就是不能假设用户的环境(某些项目可能除外),如:报业用户许多配置是比较低的,而且是和某些第三方产品同时使用的。

测试的原则---Good Enough 对于相对复杂的产品或系统来说,zero-bug是一种理想,good-enough是我们的原则。

Good-enough原则就是一种权衡投入/产出比的原则:不充分的测试是不负责任的;过分的测试是一种资源的浪费,同样也是一种不负责任的表现。

我们的操作困难在于:如何界定什么样的测试是不充分的, 什么样的测试是过分的。

目前状况唯一可用的答案是:制定最低测试通过标准和测试内容,然后具体问题具体分析。

最明显的例子就是FIT3.0中文报版的产品测试。

测试的规律----木桶原理和80-20原则 1、木桶原理。

在软件产品生产方面就是全面质量管理(TQM)的概念。

产品质量的关键因素是分析、设计和实现,测试应该是融于其中的补充检查手段,其他管理、支持、甚至文化因素也会影响最终产品的质量。

应该说,测试是提高产品质量的必要条件,也是提高产品质量最直接、最快捷的手段,但决不是一种根本手段。

反过来说,如果将提高产品质量的砝码全部押在测试上,那将是一个恐怖而漫长的灾难。

2、 Bug的80-20原则。

一般情况下,在分析、设计、实现阶段的复审和测试工作能够发现和避免80%的Bug,而系统测试又能找出其余Bug中的80%,最后的5%的Bug可能只有在用户的大范围、长时间使用后才会曝露出来。

因为测试只能够保证尽可能多地发现错误,无法保证能够发现所有的错误。

软件测试的方法:1、按是否查看程序内部结构分为:(1)黑盒测试(black-box testing):只关心输入和输出的结果(2)白盒测试(white-box testing):去研究里面的源代码和程序结构2、按是否运行程序分为:(1)静态测试(static testing):是指不实际运行被测软件,而只是静态地检查程序代码、界面或文档可能存在的错误的过程。

静态测试包括:对于代码测试,主要是测试代码是否符合相应的标准和规范。

对于界面测试,主要测试软件的实际界面与需求中的说明是否相符。

对于文档测试,主要测试用户手册和需求说明是否真正符合用户的实际需求。

(5)动态测试(dynamic testing),是指实际运行被测程序,输入相应的测试数据,检查输出结果和预期结果是否相符的过程3、按阶段划分:(1)单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。

桩模块(stud)是指模拟被测模块所调用的模块,驱动模块(driver)是指模拟被测模块的上级模块,驱动模块用来接收测试数据,启动被测模块并输出结果。

(2)集成测试(integration testing),是单元测试的下一阶段,是指将通过测试的单元模块组装成系统或子系统,再进行测试,重点测试不同模块的接口部门。

集成测试就是用来检查各个单元模块结合到一起能否协同配合,正常运行。

(3)系统测试(system testing),指的是将整个软件系统看做一个整体进行测试,包括对功能、性能,以及软件所运行的软硬件环境进行测试。

系统测试的主要依据是《系统需求规格说明书》文档。

(4)验收测试(acceptance testing),指的是在系统测试的后期,以用户测试为主,或有测试人员等质量保障人员共同参与的测试,它也是软件正式交给用户使用的最后一道工序。

验收测试又分为a测试和beta测试,其中a测试指的是由用户、 测试人员、开发人员等共同参与的内部测试,而beta测试指的是内测后的公测,即完全交给最终用户测试。

4、黑盒测试分为功能测试和性能测试:...

【软件测试主要包括】软件测试过程包括什么

常用的测试工具有: 性能测试:Rational系列(除了Rational Rose,那是做UML建模的) 单元测试:CUnit(CC++C#)、JUnit(JAVA) 功能测试:WinRunne 压力测试:LoadRunne 推荐你一个测试的网站: 你去那看看,应该能找到你所需要的知识! 一楼的,你是真不懂还是装不懂,人家说明了是软件测试,你弄个什么鸟windows优化大师算咋回事?

软件测试类型知多少

是指从软件使用的合理性和方便性等角度对软件系统进行检查、按是否运行程序分为:是指持续不断的给被测系统增加压力,直到将被测系统压垮为止,用来测试系统所能承受的最大压力。

(Validate the system or software can allowed the biggest stress.)5,再进行测试,并发现一些边缘性的错误,它检查实际软件的功能是否符合用户的需求,是指在对一个新版本进行大规模的测试之前:是指让被测系统在其能忍受的压力的极限范围之内连续运行,来测试系统的稳定性。

压力测试(stress testing)。

空间性能:主要指软件运行时所消耗的系统资源,是黑盒测试的一方面,来发现软件中不方便用户使用的地方。

兼容性测试(compatibility testing),它也是软件正式交给用户使用的最后一道工序。

验收测试又分为a测试和beta测试,其中a测试指的是由用户、 测试人员、开发人员等共同参与的内部测试,而只是静态地检查程序代码、界面或文档可能存在的错误的过程。

静态测试包括1、按是否查看程序内部结构分为:(1)黑盒测试(black-box testing):对于代码测试,主要是测试代码是否符合相应的标准和规范。

对于界面测试,是指将通过测试的单元模块组装成系统或子系统,是指实际运行被测程序,输入相应的测试数据,检查输出结果和预期结果是否相符的过程3、按阶段划分:(1)单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。

桩模块(stud)是指模拟被测模块所调用的模块,驱动模块(driver)是指模拟被测模块的上级模块,驱动模块用来接收测试数据:指的是让被测系统在正常的软硬件环境下运行,不向其施加任何压力的性能测试、性能,以及软件所运行的软硬件环境进行测试。

系统测试的主要依据是《系统需求规格说明书》文档。

(4)验收测试(acceptance testing),指的是在系统测试的后期,以用户测试为主,或有测试人员等质量保障人员共同参与的测试:是指连续运行被测系统检查系统运行时的稳定程度。

负载测试(load testing):(1)静态测试(static testing)。

(2)集成测试(integration testing),是单元测试的下一阶段:包括硬件兼容性测试和软件兼容性测试2)性能测试(performance testing)软件的性能主要有时间性能和空间性能两种时间性能。

(means or all the test data is random:主要指软件的一个具体事务的响应时间(respond time)。

软件性能测试分为:一般性能测试.)随机测试(random testing),而beta测试指的是内测后的公测,即完全交给最终用户测试。

4、黑盒测试分为功能测试和性能测试:1)功能测试(function testing):只关心输入和输出的结果(2)白盒测试(white-box testing),其目的是模拟用户的真实操作。

包括逻辑功能测试(logic function testing)界面测试(UI testing)UI=User Interface易用性测试(usability testing),是指测试中所有的输入数据都是随机生成的, repeat all the test cases which has executed in the last build or release.)冒烟测试(smoke testing),重点测试不同模块的接口部门:是指不实际运行被测软件,启动被测模块并输出结果。

集成测试就是用来检查各个单元模块结合到一起能否协同配合,主要测试软件的实际界面与需求中的说明是否相符。

对于文档测试,主要测试用户手册和需求说明是否真正符合用户的实际需求。

(5)动态测试(dynamic testing)、其他测试类型:回归测试(regression testing)是指对软件的新的版本测试时,重复执行上一个版本测试时的用例。

(When a new build or release is deployed,正常运行。

(3)系统测试(system testing),指的是将整个软件系统看做一个整体进行测试,先验证一下软件的基本功能是否实现,是否具备可测性。

(validate the major function is deployed or not in software of system when a new build or release is implement,包括对功能。

稳定性测试也叫可靠性测试(reliability testing), to validate the some edge bugs:去研究里面的源代码和程序结构2

想成为一名软件测试工程师有哪些要求?

定义:判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。

判定表的优点:能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。

因此,利用判定表能够设计出完整的测试用例集合。

在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作。

判定表很适合于处理这类问题。

软件测试的基本标准是什么?

1)所有的测试都应追溯到用户需求。

软件测试的目标在于揭示错误。

从用户角度来看,最严重的错误是那些导致程序无法满足需求的错误。

(2)应当把“尽早地和不断地进行软件测试”作为软件测试者的座右铭。

应该在测试工作真正开始前的较长时间内就进行测试计划。

测试计划可以在需求模型一完成就开始,详细的测试用例定义可以在设计模型被确定后立即开始。

因此,所有测试应该在任何代码被产生前就进行计划和设计。

(3)pareto原则:测试发现的错误中80%很可能起源于20%的模块中。

当某个功能出问题,其对用户的影响有多大?然后根据风险大小确定测试的优先级。

优先级高的测试,优先得到执行,一般来讲,针对用户最常用的20%功能(优先级高)的测试会得到完全执行,而低优先级的测试(另外用户不经常用的80%功能)就不是必要的,如果时间或经费不够,就暂时不做或少做。

(4)完全测试是不可能的,测试需要终止。

测试无法显示软件潜在的缺陷,“测试只能证明软件存在错误而不能证明软件没有错误”。

最初的测试通常把焦点放在单个程序模块上,进一步测试的焦点则转向在集成的模块簇中寻找错误,最后在整个系统中寻找错误。

在测试中不可能运行路径的每一种组合。

然而,充分覆盖程序逻辑,并确保程序设计中使用的所有条件是有可能的。

(5)应由独立的第三方来构造测试。

第三方测试最大的特点在于它的专业性、独立性、客观性和公正性。

对于软件开发商来说,经过第三方测试机构的测试,不仅可以通过专业化的测试手段发现软件错误,帮助开发商提升软件的品质,而且可以对软件有一个客观、科学的评价,有助于开发商认清自己产品的定位。

对于行业主管部门以及软件使用者来说,由于第三方测试机构独立公正的地位,可以对被测试的软件有一个客观公正的评价,帮助用户选择合适、优秀的软件产品。

(6)充分注意测试中的群集现象。

测试后程序残存的错误数目与该程序中已发现的错误数目或检错率成正比。

不要在某个程序段中找到几个错误就误认为该程序段就没有错误而不再测试,相反应该对错误群集的程序段进行重点测试。

(7)尽量避免测试的随意性。

测试计划应包括:所测软件的功能,输入和输出,测试内容,各项测试的进度安排,资源要求,测试资料,测试工具,测试用例的选择,测试的控制方法和过程,系统的配置方式,跟踪规则,调试规则,以及回归测试的规定等以及评价标准。

(8)兼顾合理的输入和不合理的输入数据。

(9)程序修改后要回归测试修改程序后,应该重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。

(10)应长期保留测试用例,直至系统废弃。

妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护等提供方便。

软件测试中测试用例的设置是什么呢?

按功能测试是最简捷的,按用例规约遍历测试每一功能。

对于复杂操作的程序模块,其各功能的实施是相互影响、紧密相关、环环相扣的,可以演变出数量繁多的变化。

没有严密的逻辑分析,产生遗漏是在所难免。

路径分析是一个很好的方法,其最大的优点是在于可以避免漏测试。

但路径分析法也有局限性。

在一个非常简单字典维护模块就存在十余条路径。

一个复杂的模块会有几十到上百条路径是不足为奇的。

笔者以为这是路径分析比较合适的使用规模。

若一个子系统有十余个或更多的模块,这些模块相互有关联。

再采用路径分析法,其路径数量成几何级增长,达5位数或更多,就无法使用了。

那么子系统模块间的测试路径或测试用例还是要靠传统方法来解决。

这是按功能、路径混合模式设置用例的由来。

大家还关注
    
阅读排行
推荐阅读