《【软件工程】软件测试及软件质量控制.pptx》由会员分享,可在线阅读,更多相关《【软件工程】软件测试及软件质量控制.pptx(102页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 12 23 34 45 56 67 7 由于测试的目标是暴露程序的错误,从心理学角度看,由设计者自己进行测试是不恰当的,设计小组和测试小组应该分别设立,有利于进行客观和公正的软件测试。测试是有限的,由于通常的测试过程不可能穷尽一切情况,即使经过了严格的测试之后,仍然可能存在没有被发现的错误隐藏在程序中,不能证明程序中没有错误。8 8 因此,测试仅仅有可能找出程序的错误,测试不能证明程序是正确的。软件工程中所有其它阶段都是“建设性”的,软件工程师力图从抽象概念出发,逐步设计出具体的软件系统,而测试人员的工作表面上看却是“破坏性”的,竭力证明软件中含有错误,不能按预定要求正确工作。凡是进行对比
2、的方式均可理解为测试验证。 9 9 软件测试应该贯穿于软件生命期的各个阶段,各阶段的工作是相互衔接、相互影响的,前一阶段发生的问题自然要影响到下一阶段的工作。为了把握各个环节的正确性,人们需要进行各种确认和验证工作。软件确认是广义上的软件测试,它是企图证明软件在一个给定的外部环境中软件的逻辑正确性的一系列活动和过程,如需求说明书的确认、程序的确认等。1010 程序的确认又分为静态确认与动态确认。 静态确认一般不在计算机上执行程序,而是通过程序正确性证明、静态分析或人工分析来确认程序的正确性; 动态确认主要通过动态分析和动态测试,用执行程序的过程来检查执行的状态,确认程序是否有问题; 1111
3、正确性证明主要是企图绕过复杂的测试,直接证明程序的正确性。 如程序的输入输出断言法。 设程序段为S,其前断言为P,后断言为R。如果执行S以前P为真,则执行S后R也为真,则证明S是正确的,记为PSR。1212 任何程序总可以分成S1、S2、 Sn个结点,对应的断言为R1、R2、Rn,起初R1为输入断言,R2为输出断言,也是下一个输入断言, Rn为最后的输出断言,我们总可以,将S1、S2、 Sn逐个证明,自顶向下或自底向上都可证明程序的正确性,该分支已发展为计算机代数学; 1313 软件验证也属于广义上的软件测试,它试图证明在软件生命期的各个阶段、各阶段的逻辑协调性、完备性和正确性。 包括系统分析
4、员理解用户要求的正确性、表达的正确性、设计人员对需求规格说明理解的正确性、设计与设计表达的正确性、程序编码的正确性和运行软件程序时输入的正确性、运行结果的正确性等,运行结果与用户预期的结果是否一致等,这说明任何一个环节上发生了问题都可能在软件测试中表现出来。 1414 将测试的过程用数据流图表示,可得测试信息流如图6-1所示。 (至软件配置)软件配置 1 测试结果 2 错误 3 修正的软件测试配置 测试结果测试工具 测试 评价 调试 正确 预测结果 出错率 4 数据 可靠性 分析图图6-1 测试信息流测试信息流 1515 1.测试过程需要三类输入: (1)软件配置:包括软件开发文档(用户文档、
5、需求规格说明、软件设计说明、源程序代码)、目标执行程序、数据结构; (2)测试配置:包括测试计划、测试用例、测试驱动程序等;实际上在整个软件开发过程中,测试配置只是软件配置的一个子集;16161717181819192020212122222323242425252626272728282929需求分析软件设计软件编码确认测试集成测试单元测试系统测试图图6-2 6-2 软件测试与软件开发过程间的关系软件测试与软件开发过程间的关系3030需求分析 说明书概要设计 说明书详细设计 说明书源程序 代码确认测试集成测试单元测试系统测试图图6-3 6-3 软件测试与开发文档之间的关系软件测试与开发文档之
6、间的关系3131323233333434残存错误的可能性已发现的错误数图6-4 软件错误的群集现象示意图3535363637373838393940404141424243434444454546464747图图6-5程序段程序框程序段程序框图图 (A1)AND(B=0) (A=2)OR(X1) X=X/AX=X+1abcdeTT48484949图图6-5程序段程序框程序段程序框图图 (A1)AND(B=0) (A=2)OR(X1) X=X/AX=X+1abcdeTT50505151525253535454555556565757585859596060616162626363646465656666676768686969707071717272737374747575767677777878797980808181828283838484858586868787888889899090919192929393949495959696979798989999100100读入购货月份T和购货量WT in 4-6,10,12折扣率=5%W20W20折扣率=10%折扣率=20%折扣率=20%折扣率=30%结束TFTFTFTFTF101101102102