设为首页 - 加入收藏
广告 1000x90
您的当前位置:144177黄大仙有求必应 > 静态分析程序 > 正文

可以帮一下不那个静态测试和动态测试的相同之处是什么啊

来源:未知 编辑:admin 时间:2019-05-31

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  静态方法是指不运行被测程序本身,仅通过分析或检查源程序的文法、结构、过程、接口等来检查程序的正确性。静态方法通过程序静态特性的分析,找出欠缺和可疑之处,例如不匹配的参数、不适当的循环嵌套和分支嵌套、不允许的递归、未使用过的变量、空指针的引用和可疑的计算等。静态测试结果可用于进一步的查错,并为测试用例选取提供指导。

  动态方法是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率和健壮性等性能,这种方法由三部分组成:构造测试实例、执行程序、分析程序的输出结果。

  它们只是一个测试的不同分类角度而已,同一个测试,既有可能属于黑盒测试,也有可能属于测试;既有可能属于静态测试,也有可能属于白盒测试。而且它们之间还有包括交叉的关系,总结以下4句话:

  ● 黑盒测试有可能是动态测试(运行程序,只看输入和输出),也有可能是静态测试(不运行程序,只是查看界面)

  ● 白盒测试有可能是动态测试(运行程序,并分析代码结构),也有可能是静态测试(不运行程序,只是静态查看代码)

  ● 动态测试有可能是黑盒测试(运行程序,只看输入和输出),也有可能是白盒测试(运行程序,并分析代码结构)

  ● 静态测试有可能是黑盒测试(不运行程序,只是查看界面),也有可能是白盒测试(不运行程序,只是静态查看代码)

  区别四:在相当短的时间里,静态测试的覆盖度能达到100%,而动态测试经常是只能达到50%左右,原因动态测试发现的bug大部分只是在测试实际执行的那部分代码

  区别七:静态测试的执行可以在程序编码编译前,动态测试只能在编译后才能执行

  根据程序是否运行,测试可以分为静态测试和动态测试。静态测试就是静态分析,对模块的源代码进行研读,查找错误或收集一些度量数据,并不需要对代码进行编译和仿真运行。静态测试采用人工检测和计算机辅助静态分析手段进行检测,只进行特性分析。

  ● 人工检测:人工检测是指不依靠计算机而完全靠人工审查或评审软件。人工检测这种方法可以有效地发现逻辑设计和编码错误,发现计算机不易发现的问题。

  ● 计算机辅助静态分析:利用静态分析工具对被测程序进行特性分析,从程序中提取一些信息,以便检查程序逻辑的各种缺陷和可疑的程序构造。如用错的局部变量和全局变量,不匹配的参数,潜在的死循环等。静态分析中还可以用符号代替数值求得程序结果,阻便对程序进行运算规律的检验。

  静态测试包括对软件产品的设计规格说明书的审查,对程序代码的阅读、审查等。静态分析的查错和分析功能是其他方法所不能替代的.已被当做一种自动化的代码校验方法。

  动态测试是通过观察代码运行时的动作,来提供执行跟踪、时间分析,以及测试覆盖度方面的信息。动态测试通过真正运行程序发现错误。通过有效的测试用例,对应的输入脚出关系来分析被测程序的运行情况。

  不同的测试方法各自的目标和侧重点不一样,在实际工作中。应将这两种方法结合起来运用,以达到更完美的效果。

  以上的测试方法各有所长,每种方法都可设计出一组有用的例子,用这组测试用例可以比较容易地发现某种类型的错误,却不易发现另一种类型的错误。因此在实际测试中,应结合各种测试方法,形成综合策略。在单元测试主要用白盒测试;在系统测试时主要用黑盒测试,或者以黑盒测试为主要测试方法,白盒测试为辅助方法等。

本文链接:http://that-a-way.com/jingtaifenxichengxu/144.html

相关推荐:

网友评论:

栏目分类

现金彩票 联系QQ:24498872301 邮箱:24498872301@qq.com

Copyright © 2002-2011 DEDECMS. 现金彩票 版权所有 Power by DedeCms

Top