Logiscope测试机理[1] 软件测试
1前言
本文介绍了静态测试工具Logiscope的测试机理。通过对Logiscope测试机理的了解,能帮助我们更好的使用这个工具。
通过阅读本文,你可以了解到以下信息:
◆Logiscope是如何分析软件产品质量的;
◆Logiscope是如何检测代码的编码规范的;
◆Logiscope是如何统计测试覆盖率的;
2 Logiscope总览
Logiscope有三项主要功能,以三个独立工具的形式出现,分别是:
软件质量分析工具——Audit;
代码规范性检测工具——Rulechecker;
测试覆盖率统计工具——TestChecker。
Audit和Rulechecker提供了对软件进行静态分析的功能,TestChecker提供了测试覆盖率统计的功能。
Logiscope可以对多种语言实现的代码进行分析,比如C、C++、Java、Ada,等等。下面的内容与具体的语言基本是没有关系的,但如果某些地方确实要涉及具体的语言,则我都是以C++为例。
下面,我对Audit、Rulechecker和TestChecker的测试机理,分别进行介绍。
3 Audit测试机理;
3.1软件质量模型
前面已经说过,Audit是审查程序代码质量的。要讨论代码的质量,就需要先说明一下软件质量模型的概念,因为理解下面的内容需要软件质量模型的相关知识。
如果你原来学习过软件质量保证的相关知识,那么应该会对软件质量模型这个概念有印象。为了说明Audit的测试机理,在这里只对软件质量模型做个简单的介绍。如果你对软件质量模型的概念比较陌生,建议找一本讲述软件工程方面的书,阅读一下软件质量保证部分的内容。
软件质量模型是一个分层结构,它的一般形式如下图所示:
质量因素处于质量模型中最高一级。软件的质量因素包括功能性、可靠性、易用性、效率、可维护性、可移植性这六个方面(在ISO/IEC 9126中有详细的描述)。
在质量因素之下,又细分成多个质量标准。
每个质量标准又由多个质量度量元组成。这些质量度量元处于质量模型分层结构中的最底层。
质量因素、质量标准一般是固定的,就是这几类,但质量度量元不是固定的,可以根据不同的情况发生变化。
软件质量模型就是一个将程序信息由底层到高层、由细节到概括的一个过程模型,它由简单、可测量的数据入手,最后分析概括出软件的特征。
3.2 Audit对软件质量模型的实现
上面我们了解了软件质量模型的大体结构,Audit也是按照这种分层、量化的方式来审查代码质量的。