|
知识路径: > 电子商务系统程序设计基础 > 电子商务系统的测试 > 测试工具 >
|
相关知识点:8个
|
|
|
|
白盒测试工具可以分为静态测试工具和动态测试工具,一般是针对代码进行测试,测试中发现的缺陷可以定位到代码级。
|
|
|
|
静态分析工具直接对代码进行分析,不执行被测程序,也不需要对代码编译链接,仅对代码进行语法扫描,进行控制流分析、数据流分析、接口分析和表达式分析等,找出不符合编码规范的地方,根据某种质量模型评价代码的质量,生成系统的调用关系图等,并输出测试结果。目前,具有静态分析功能的软件测试工具主要有Rational公司的Purify、Telelogic公司的Logiscope、Macabe公司的Macabe、PR公司的PRQA等。通常,静态分析工具有以下功能:
|
|
|
(1)完成编译时的语法检查和连接时的一致性检查。对模块中的所有变量检查其是否已定义,是否引用了未说明的变量,是否有未使用的变量等。
|
|
|
(2)检查模块接口、类型的一致性。主要是检查模块调用时的形式参数与实际参数在个数、类型上是否一致。参数定义的类型是否匹配,数组的维数、下标变量的范围是否正确。同一变量在不同的文件中定义是否一致等。
|
|
|
(3)检查逻辑上可能有错误的结构,特别是对嵌套结构、转移语句的检查。
|
|
|
(4)变量、函数交叉引用关系分析。找出变量可能影响的语句和其他变量等。
|
|
|
(5)检查被测程序违反编程标准的情况。如:程序的注释是否太少,模块的复杂度是否太高等。
|
|
|
(6)对程序的静态特性的统计功能。如:统计程序的紧凑度;各类源语句的个数和标识符在各语句中的使用情况;多余、不可能达到的程序段等。
|
|
|
|
动态分析工具就是通过选择适当的测试用例,运行测试程序,将测试结果和预期结果相比较,以发现错误。通常的方法是在被测程序中插入探针,检测各语句、分支和路径的执行次数和运行结果等,以便统计各种覆盖情况。如果测试的覆盖率没有达到要求,则要设计新的测试用例来满足覆盖要求。通过对测试结果的分析来发现错误。除了覆盖分析之外,也常分析程序对资源的占用情况,优化程序,提高系统性能。其与静态测试工具最大的不同就是动态测试工具要求被测系统实际运行。动态测试工具的代表有Compuware公司的DevPartner软件、Rational公司的Purify系列。
|
|
|