插桩
来源:互联网 发布:淘宝客服怎么找 编辑:程序博客网 时间:2024/04/30 00:41
由于程序插桩技术是在被测程序中插入探针,然后通过探针的执行来获得程序的控制流和数据流信息,以此来实现测试的目的。因此,根据探针插入的时间可以分为目标代码插桩和源代码插桩。
目标代码插桩
目标代码插桩的前提是对目标代码进行必要的分析以确定需要插桩的地点和内容。由于目标代码的格式主要和操作系统相关,和具体的编程语言及版本无关,所以得到了广泛的应用,尤其是在需要对内存进行监控的软件中。但是由于目标代码中语法、语义信息不完整,而插桩技术需要对代码词法语法的分析有较高的要求,故在覆盖测试工具中多采用源代码插桩。
源代码插桩
源代码插桩是在对源文件进行完整的词法分析和语法分析的基础上进行的,这就保证对源文件的插桩能够达到很高的准确度和针对性。但是源代码插桩需要接触到源代码,使得工作量较大,而且随着编码语言和版本的不同需要做一定的修改。在后面我们所提到的程序插桩均指源代码插桩。
程序插桩:是借助往被测程序中插入操作,来实现测试目的的方法。 程序插桩的基本原理是在不破坏被测试程序原有逻辑完整性的前提下,在程序的相应位置上插入一些探针。这些探针本质上就是进行信息采集的代码段,可以是赋值语句或采集覆盖信息的函数调用。通过探针的执行并输出程序的运行特征数据。基于对这些特征数据的分析,揭示程序的内部行为和特征。
0 0
- 插桩
- 插桩
- 插桩技术
- 代码插桩【转载】
- 程序插桩
- 程序插桩
- 程序插桩-实例
- 测试中的插桩技术
- 软件测试-二进制插桩
- dyninst动态插桩示例
- 基于探针的动态插桩
- Android 反编译、Smali插桩、二次打包
- Android学习第八天---smali插桩
- smali代码插桩打印日志
- 转载_基于探针的动态插桩
- soot实现Android Apps插桩(一)
- soot实现Android Apps插桩(二)
- soot插桩关键点总结(三)
- Unity3D自学笔记——选择3D物体
- Linux系统下挂载Windows分区的方法和技巧
- MSET算法参差分析(一)
- GCC编译器相关
- C语言(20)-----字符串知识点大全
- 插桩
- UVa 101 The Blocks Problem
- 【Android 并发编程】线程间通信的三种基本方式,android线程
- TCP三次握手
- 网络常见面试题汇总
- socket多人聊天程序C语言版(二)
- 当科技让我们不是人了
- 从一元一次方程到伽罗瓦理论-读后
- python新手常见的报错提示