HI,亲爱的用户

为了获得火线的最佳体验,建议使用

360浏览器极速模式?

或最新版Chrome浏览器

下载360浏览器 下载最新版Chrome浏览器

命令行运行


命令行运行

1. 在火线官网进行火线相关文件的下载,下载后的文件为fireline.jar。

2. 运行fireline.jar文件前请先确认系统环境中已安装Java JDK。

3. 在命令行中输入以下命令,点击确定。

java -jar D:\test\fireline.jar -s=D:\test\TestCase -r=E:\RedlineReport

参数解释:
【必填项】-s或scanSrcDir为被扫描的项目工程路径
【必填项】-r或reportSaveDir为火线报告输出路径

4. 扫描完成后,在火线报告输出路径找到testReport.html,打开后可见。


命令行参数说明


命令行参数说明

必选项说明:
  1. -r或reportSaveDir 火线报告输出路径
  2. -s或scanSrcDir 被扫描的项目工程路径
可选项说明:
  1. reportFileName 火线报告文件名
  2. proj_name 被扫描的项目名称
  3. user 提交人名称
  4. config 配置文件路径
  5. -nocpd 不运行重复代码检查功能
示例:

java -jar fireline.jar -s=C:\Users\yuanwei3-iri\Desktop\newRed -r=E:\RedlineReport reportFileName=qmtest proj_name=test123 user=Qtest config=D:\test\RedLineConfigurationNoLog.xml

其中参数config的配置文件RedLineConfigurationNoLog.xml可以控制火线扫描哪些规则,过滤哪些规则。
配置文件的写法如下:

                          
                            
                            <?xml version="1.0" encoding="UTF-8" standalone="no"?>
                            <fireline>
                                <args>
                                    <!-- 选择扫描哪些类别的规则
                                    1:代码规范类
                                    2:内存类
                                    3:日志类
                                    4:安全类
                                    5:空指针
                                    6:多线程
                                  -->
                                  <scanTypes>1+2+4+5+6</scanTypes>
                                  <!--过滤掉单条规则,请加QQ群298228528获取规则名称-->
                                  <filterRules>
                                    <!--<filterRule ruleName="LogOnOffRule" />       
                                    <filterRule ruleName="LogBlockRule" />
                                    <filterRule ruleName="LogAssignmentRule" />-->
                                  </filterRules>
                                  <!--过滤掉你不想检查的文件(注意:重复代码检查不支持过滤)-->
                                  <filterFiles>
                                      <!--过滤单个文件-->
                                      <filterFile Name="R.java"/>
                                      <!--过滤整个文件夹-->
                                      <filterFile Name="/facebook/"/>
                                  </filterFiles>
                              </args>
                            </fireline>
                            
                           
                        

以上配置文件去掉了日志类的规则,所以火线扫描过程中就不会执行日志类规则的检查。
该参数不指定时会默认扫描所有类型的规则。
执行完成后,火线报告文件名变为qmtest.html。
报告内容中的项目名称和提交人都变为传入的参数值。
注意:如果想定制修改规则的优先级,请加QQ群298228528获取相关文档。


Android Studio插件



Gradle部署


Gradle部署

新增一个用来启动火线扫描的task:

                                                   
                             task runFireline(type:Exec) {
                               commandLine 'cmd' , '/c' , 'java -jar D:/fireline.jar -s=D:/asWrokSpace/qh_android_sdk proj_name=sdk -r=D:/report'
                                standardOutput = new ByteArrayOutputStream()
                                ext.output = {
                                  return standardOutput.toString()
                                }
                                println standardOutput
                              }
                             
                        

Jenkins插件


一、Jenkins插件的安装步骤

Tips:如果您是第一次使用Jenkins,请先前往文章【Jenkins下载安装配置教程】

1. 依次点击"Jenkins"->"系统管理"->"管理插件",在插件页面点击"可选插件"按钮,

2. 在过滤栏输入"fireline",勾选查询出来的"Fireline Plugin"插件,点击直接安装。等待安装成功后,点击"返回首页",开始配置。

3. 点击创建一个新任务,输入任务名称,选择“构建一个自由风格的软件项目”,点击确定。在“构建”栏点击“增加构建步骤”,在下拉列表中选择“Execute FireLine”选项。

4. “构建”栏会出现火线相关的配置,报告路径会有一个默认的地址,不需要输入,默认报告会放在你的个人用户的“report”目录下,如图所示。配置完成,点击保存按钮。

5. 安装一个新的插件“HTML Publisher plugin”,再次去往“系统管理”-> “管理插件” ->“可选插件”,搜索“HTML Publisher plugin”,点击直接安装,安装成功后返回。

6. 回到项目配置页面,这次只需要配置“构建后操作”栏,点击“增加构建后操作步骤”下拉框,选择“Publish HTML reports”选项。

7. 点击“增加”按钮。在“HTML directory to archive”栏输入火线报告的生成路径,即在“构建”栏中火线默认的结果报告路径,复制过来即可。在“Index page[s]”栏输入“testReport.html”,这是火线默认生成的HTML报告的名称。这两项配置完成后点击保存。

8. 此时还没有完成,因为火线的HTML报告用了JS进行更好的效果展示,我们需要在Jenkins中配置运行执行JS脚本,否则火线报告在Jenkins中的展示会错乱。 前往“系统管理”->“脚本命令行”,在文本框中输入System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")这行代码,点击右下角的“运行”按钮。

9. 最后一步,回到我们的项目,点击“立即构建”,构建完成后就可以点击“HTML Report”栏直接查看火线报告了。


二、Jenkins插件参数配置说明

火线的Jenkins插件共有8个参数,分别为结果报告路径、结果报告文件名、规则配置信息、参数化构建、JVM参数配置和JDK版本设置。如下图所示:

1、结果报告路径【必要】:火线扫描项目后产生结果报告存放的路径,默认目录为当前用户的临时文件夹的report目录下。本参数可使用Jenkins环境变量,例如:${WORKSPACE}

2、结果报告文件名【必要】:火线扫描项目后产生结果报告的文件名称,默认为testReport.html。本参数可使用Jenkins环境变量,例如:${BUILD_NUMBER}-report.html

3、Block问题控制构建状态:如果选择Yes,则当火线扫描结果出现Block级别问题时,JOB构建失败。默认选项为No。

4、开通引用JS、CSS的HTML页面访问权限:当选择Yes时,则开通jenkins对外部引用的JS和CSS的访问权限。默认选项为Yes。

5、规则配置信息:可直接在文本框中编辑xml规则配置文本。可点击右侧帮助文“?”图标,查看具体配置信息。如下图所示:

6、参数化构建:此功能需要配合“build with parameter”插件组合使用。
在build with parameter 选项中选择添加boolean类型的参数,例如:fireline。然后在此选项中引用环境变量${fireline}即可。如下图所示:

(1)配置参数化构建的变量 (2)引用环境变量 (3)参数化构建,控制火线的扫描

7、JVM参数配置:可根据jenkins自身系统配置,更改合适的JVM运行参数,以达到更好的扫描性能。默认配置为:-Xms1g -Xmx1g -XX:MaxPermSize=512m

8、JDK版本设置:可配置使用不同版本的JDK版本。默认使用Jenkins系统环境的JDK版本。火线目前支持jdk1.7和jdk1.8版本。