SourceMonitor的安装及使用

(本文部分引自博客:http://blog.csdn.net/yf210yf/article/details/17535713)

  SourceMonitor是一款免费的代码度量工具,运行在Windows平台下。它可对多种语言写就的代码进行度量,包括C、C++、C#、Java、VB、Delphi和HTML,并且针对不同的语言,输出不同的代码度量值。

像其他代码度量工具一样,SourceMonitor只关注代码,并为编码人员提供及时的反馈,它不是一款项目管理工具,不关注项目实施中从功能分析到设计编码,再到测试这整个过程。

  像其他代码度量工具一样,SourceMonitor只关注代码,并为编码人员提供及时的反馈,它不是一款项目管理工具,不关注项目实施中从功能分析到设计编码,再到测试这整个过程。

安装:(如图所示)

  

本工具的反馈信息包括:

  • 总行数(Lines):包括空行在内的代码行数;
  • 语句数目(Statements):在C语言中,语句是以分号结尾的。分支语句if,循环语句for、while,跳转语句goto都被计算在内,预处理语句#include、#define和#undef也被计算在内,对其他的预处理语句则不作计算,在#else和#endif、#elif和#endif之间的语句将被忽略;
  • 分支语句比例(Percent Branch Statements):该值表示分支语句占语句数目的比例,这里的“分支语句”指的是使程序不顺序执行的语句,包括if、else、for、while和switch;
  • 注释比例(Percent Lines with Comments):该值指示注释行(包括/*……*/和//……形式的注释)占总行数的比例;
  • 函数数目(Functions):指示函数的数量;
  • 平均每个函数包含的语句数目(Average Statements per Function):总的函数语句数目除以函数数目得到该值;
  • 函数圈复杂度(Function Complexity):圈复杂度指示一个函数可执行路径的数目,以下语句为圈复杂度的值贡献1:if/else/for/while语句,三元运算符语句,if/for/while判断条件中的"&&"或“||”,switch语句,后接break/goto/ return/throw/continue语句的case语句,catch/except语句;
  • 函数深度(Block Depth):函数深度指示函数中分支嵌套的层数。

以Java为例,展示度量值的呈现形式:

  1.  新建项目,选择Java语言

  

  2.  新建测试项目,并选好文件路径

  

  3.   选择要java项目的路径

  

  4.  选择项目配置,这几步骤可以默认,也可以自己修改

  

  

  

  

  5.  点击完成后,选择要度量的文件列表

  

  6.  度量完成后,双击查看

    

    

  检查结果的检查点视图(checkpoint view)及函数视图(method view)

  

  

将SourceMonitor集成至Eclipse:

  1. 在Eclipse,点击Run→External Tools→External Tools Configuration,如图:
  2. 点击Program,填写SourceMonitor的路径,及参数/DJava ${container_loc}/${resource_name},如图:
  3. 然后即可得到分析结果
原文地址:https://www.cnblogs.com/TroyYue/p/4521112.html