浔之漫智控技术(上海)有限公司
主营产品或服务:西门子PLC , 西门子变频器 , 西门子数控系统
江西西门子授权代理商

江西西门子授权代理商

证明程序有错,而不是证明程序无错误。

② 一个好的测试用例是在于它能发现至今未发现的错误。

③ 一个成功的测试是发现了至今未发现的错误的测试。

这就是软件测试的第二类方法,简单地说,就是验证软件是“不工作的”,或者说是有错误的。Myers认为,一个成功的测试必须是发现Bug的测试,不然就没有价值。这就如同一个病人(假定此人确有病),到医院做一项医疗检查,结果各项指标都正常,那说明该项医疗检查对于诊断该患者的病情是没有价值的,是失败的。Myers提出的“测试的目的是为了证伪”这一概念,推翻了过去“为表明软件正确而进行测试”的错误认识,为软件测试的发展指出了方向,软件测试的理论、方法在之后得到了长足的发展。第二类软件测试方法在业界也很流行,受到很多学术界专家的支持。发的准则,如果没有遵守这些准则,极有可能导致质量不高。

③ 通常,有一组没有显示描述的隐含需求(如期望软件是容易维护的)。如果软件满足明确描述的需求,但却不满足隐含的需求,那么软件的验证了合适的值,但是没有发现矛盾之处),需要像丙那样,用*小工作量找出合适的反例。

IEEE把软件测试定义为:从通常是无限大的执行域中恰当地选取一组有限测试用例,对照程序已经定义的预期行为,动态地检验程序的行为。

从这个定义可以看出软件测试的4个

浔之漫智控技术(上海)有限公司(xzm-wqy-sqw)

是中国西门子的合作伙伴,公司主要从事工业自动化产品的集成,销售和维修,是全国的自动化设备公司。

公司坐落于中国城市上海市,我们真诚的希望在器件的销售和工程项目承接、系统开发上能和贵司开展多方面合作。

以下是我司主要代理西门子产品,欢迎您来电来函咨询,我们将为您提供优惠的价格及快捷细致的服务!

江西西门子授权代理商

复杂、非确定的系统,由于系统会处于不同的状态,因此对于同样的输入可能产生不同的响应。所以,特定的输入通常还要指定系统的特定状态。其次是“有限”,在测试中实际能够观察的执行数量是有限的。测试永远都意味着有限资源和计划进度与本质上是无限测试需求之间的折中:正是这种矛盾带来了大家经常提到的技术(测试充分性评判准则)和管理(测试工作量估计)两个方面的测试问题。再次是“选取”,很多测试手段的本质区别就是如何选择有限的测试集。针对特定条件确定*合适的选取准则是一个非常复杂的问题,在实践中需要运用风险分析技术和测试工程专门知识。*后是“预期”,必须能够确定所观察到的程序执行输出是不是可接受的,否则测试工作就是无用的。

软件测试是伴随着软件的产生而产生的。在早期的软件开发过程中,那时软件规模都很小、复杂程度低,软件开发的过程混乱无序、相当随意,测试的含义比较狭窄,开发人员将测试等同于“调试”,目的是纠正软件中已经知道的故障,常常由开发人员完成这部分的工作。对测试的投入极少,测试介入也晚,常常是等到形成代码,产品已经基本完成时才进行测试。质量仍然是值得怀疑的。

上述的定义很抽象,我们还是根据经验,如果你想一股脑儿地把任何事情都做好,结果通常是什么都做不好,做事总是要分主次的。什么是重要的质量属性应当视具体产品的特征和应用环境而定,请读者不要受本书观点的限制。*简单的判别方式就是考察该质量属性是否被用户关注(即卖点)。

其中,软件测试是软件质量保证的关键步骤和重要手段,下面介绍软件测试的概念。

1.2 软件测试的概念

软件测试是软件开发的重要、必要部分,是通过找

江西西门子授权代理商

题重要得多。因此,必须首先把软件测试看做是检验预防程序错误的机制是否有效的主要手段,同时又是找出程序异常的手段。很迷茫。软件的质量不容易说清楚,下面列举说明,就以健康作类比吧。早先人们以为长得结实、饭量大就其中,功能性质量属性有3个:正确性、健壮性和可靠性;非功能性质量属性有7个:性能、易用性、清晰性、安全性、可扩展性、兼容性和可移植性。

为什么“10大”里面不包括可测试性、可维护性、灵活性呢?它们不也是很重要的吗?

答:它们是很重要的,但不是软件产品的卖点,所以挤不进“10大”行列。我认为如果做好了前述“10大”质量属性,软件将会自然而然地具备良好的可测试性、可维护性。人们很少纯粹地去提高可测试性和可维护性,勿要颠倒因果。至于灵活性,它有益处也有坏处,该灵活的地方已经被其他属性覆盖,而不该灵活的地方就不要刻意去追求。是健康,这显然是不科学的。现代人总是通过考察多方面的生理因素来判断是否健康,如测量身高、体重、心跳、血压、血液、体温等。如果上述因素都合格,那么表明这人是健康的。如果某个因素不合格,则表明此人在某个方面不健康,医生会对症下药。同理,我们也可以通过考察软件的质量属性来评价软件的质量,并给出提高软件质量的方法。

1.1.4 质量属性快速问答

一提起软件的质量属性,人们首先想到的是“正确性”。“正确性”的确很重要,但运行正确的软件就是高质量的软件吗?

答:不见得,因为这个软件也许运行速度很低,并且浪

量的问题。可见正确性只是反映软件质量的一个因素而已。

早在1976年,由Boehm等提出软件质量模型的分层方案。1979年,McCall等人改进Boehm质量模型又提出了一种软件质量模型。质量模型中的质量概念基于11个特性之上,而这11个特性分别面向软件产品的运行、修正、转移。它们与特性的关系如图1-1所示。McCall等认为,特性是软件质量的反映,软件质量可用做评价准则,定量化地度量软件属性克制软件质量的优劣,。在那次会议上第一次提出了软件工程(Software Engineering)这个概念。到今年(2013),软件工程整整走过了45年的历程。

在这段时间的发展中,人们针对软件危机的表现和原因,经过不断的实践和总结,越来越认识到:按照工程化的原则和方法组织软件开发工作,是摆脱软件危机的一个主要出路。

今天,尽管“软件危机”并未被彻底解决,但软件工程多年的发展仍可以说是硕果累累。下面给出一个软件工程的定义,然后简单讨论一下软件工程所包含的内容。

软件工程是一门研究如何使用系统化、规范化、数量化等工程原则和方法来进行软件的开发和维护的学科。

软件工程包括两方面的内容:软件开发技术和软件项目管理。

软件开发技术包括软件开发方法学、软件工具和软件工程环境


展开全文
优质商家推荐 拨打电话