提供示例和修复建议,精准定位代码缺陷
代码检查(CodeCheck)是基于云端实现代码质量管理的服务,软件开发者可在编码完成后执行多语言的代码静态检查和安全检查,获取全面的质量报告,并提供缺陷的改进建议和趋势分析,有效管控代码质量,降低解决成本
专业
提供近2000条华为典型检查规则; 提供多维度质量统计报表,包括质量星级和风险指数评估
精准
精确定位缺陷,提供修复指导; 支持用户自定义检查规则集,精准检查用户关注缺陷
全面
支持Java、JS、PHP等多种主流开发语言,且持续更新; 支持代码静态检查、包安全检查、代码重复率和圈复杂度检查
易用
支持多种语言混合检查; 配置任务一键执行,批量过滤缺陷,分级分类快速处理
Web应用
微服务
优势
专业
支持600+条Java语言检查规则
精准
代码缺陷精确到行,且提供修复指导,快速修复缺陷
定制化
支持自定义检查规则集,满足个性化需求
支持多种语言
支持Java、JavaScript、CSS、HTML、PHP、C#、Android等常见开发语言
典型检查
提供近2000条华为典型检查规则集,支撑web检查、安全检查、架构检查、编码问题检查等场景
定制检查
用户可以基于规则库定制满足场景专项需求的检查规则集
指导修复
针对每个代码缺陷,提供详细的缺陷影响说明、正确示例、错误示例、修改建议
分级处理
针对大量代码缺陷,用户可根据问题级别、问题分类、语言、文件目录等进行过滤,分级处理
多维度报表
提供质量星级、风险指数、问题趋势、以及多中代码质量报表
更新时间: 2019-01-04 09:38
代码检查(CodeCheck)是面向软件开发者提供代码质量管理云服务,支持Java、C/C++ 、Android(Gradle)、PHP、C#、JavaScript、Web和CSS等业界主流开发语言,可在线进行多种语言的代码静态检查、代码架构检查、代码安全检查、编码问题检查、质量评分、代码缺陷改进趋势分析,辅助用户管控代码质量。
代码检查帮助您快速定位代码缺陷,提供示例和修复建议,支持一键跳转到代码库在线修复;提供华为典型检查规则集,支持用户自定义检查规则集,灵活适配项目需求;一键执行代码检查,批量处理缺陷。
代码检查具有以下特性:
一个平台支持多种语言检查,持续增加支持广度。
提供华为典型检查规则集,支撑Web检查、安全检查、架构检查、编码问题检查等场景。
支持用户自定义检查规则集。
针对代码缺陷列表提供多维度筛选,支撑用户分级处理。
针对代码缺陷,提供影响说明、修改示例和建议。
单击代码缺陷,精确定位代码行,立即查看代码。
单击一键跳转到代码库,支持在线编辑代码。
支持批量处理代码缺陷,快速高效。
支持定时执行代码检查。
代码检查结果邮件通知。
质量星级,专业代码质量评分。
问题状态,指导项目每日改进闭环。
质量趋势,分析历史问题根因,持续改进。
更新时间: 2019-01-04 09:38
代码检查功能列表如表1所示。
表1 功能列表
功能
描述
架构缺陷检查
用架构检查规则集,对自己的代码进行架构缺陷检查。
编码问题检查
用编码问题检查规则集,对自己的代码进行编码问题缺陷检查。
代码安全检查
用代码安全检查规则集,对自己的代码进行代码安全风险和缺陷检查。
代码风格检查
用代码风格检查规则集,检查自己的代码是否匹配选定风格。
代码质量评分
自动计算代码质量分数。
源码管理
通过问题管理中的问题描述、问题状态、检查规则、文件路径、源码以及修改建议等,对代码检查中检查出来的问题进行处理。
代码圈复杂度
通过代码圈复杂度报表评估代码质量风险。
代码重复率
通过代码重复率报表评估代码质量风险。
包安全
通过包安全报表评估源代码所引用的第三方包的质量风险。
定时执行检查
提供每周、每日定时检查代码功能,让用户休息编译两不误。
检查结果邮件通知
检查完成后,通过邮件通知相关人员检查结果,便于进行及时处理。
Java代码检查
在线检查工程中的Java代码。
JS代码检查
在线检查工程中的JS代码。
CSS代码检查
在线检查工程中的CSS代码。
Web检查
在线检查工程中的HTML/JSP代码。
C/C++代码检查
在线检查工程中的C/C++代码。
Android(Gradle)代码检查
在线检查工程中的Android(Gradle)代码。
PHP代码检查
在线检查工程中的PHP代码。
C#代码检查
在线检查工程中的C#代码。
更新时间: 2019-01-04 09:38
简介
多语言质量检查是面向软件开发者提供多语言资源质量扫描的云服务,支持英语、德语、法语、意大利语、阿拉伯语等20多种世界主流语言,可在线对多语言资源文件进行语言拼写检查、语言混杂、翻译完整性、资源规范性等常见语言问题检查,辅助用户管控多语言资源的质量。
多语言质量检查帮助您快速定位资源文件语言本地化缺陷,提供示例和修复建议,支持一键跳转到代码库在线修复;提供华为典型检查规则集,一键执行代码检查,批量处理缺陷。
特性
基于华为公司多语言质量看护实践,结合语言本地化研发流程,提供简单易用、多维度的多语言质量检查服务。
多语言检查具有以下特性:
提供易操作、多方式(手工/定时/周期)的检查能力
提供20多种语言检查能力,覆盖主流出海市场的语言
提供20多种华为典型检查规则集,覆盖拼写低错、语言混杂、翻译完整性、资源规范性等常见问题场景
支持覆盖移动、Web应用等多类资源文件场景
仅对资源文件进行检查,安全可靠,不涉及软件核心资产
针对代码缺陷列表提供多维度筛选,质量问题清晰可视,一目了然
支持导出问题详情报告,方便线下语言专家确认问题
单击代码缺陷,快速定位代码行,立即查看代码。
针对代码缺陷,提供影响说明、修改示例和建议,方便问题快速修复
单击一键跳转到代码库,支持在线编辑代码
支持批量处理代码缺陷,快速高效
代码检查结果邮件通知
更新时间: 2019-01-04 09:38
Web应用安全检查
应用:用Web安全规则集进行代码检视。
场景特点:Web服务面向Internet互联网,容易遭受DDos攻击、冒名访问、信息泄露等风险。
适用场景:互联网服务交付安全等级验收。
项目质量控制
应用:在交付过程中实时根据代码复杂度、重复率,质量得分控制风险。
场景特点:项目经理的共识“从前端保证质量,把质量做在日常交付”,但经常没有有效的工具平台,目前大部分的质量工作还是依赖后端测试。
适用场景:项目经理迭代交付质量控制。
更新时间: 2018-12-21 16:36
帮助用户,快速建立对代码检查的整体印象。例如一家新公司,进行常规操作设置后,能够将代码检查用起来。
背景信息
代码检查(CodeCheck)是基于云端实现代码质量管理的服务,软件开发者可在编码完成后执行多语言的代码静态检查和安全检查,获取全面的质量报告,并提供缺陷的改进建议。
操作流程
介绍在“代码检查”中,代码检查的快速操作流程,如图1所示。
图1 操作流程
操作步骤
1.新建代码检查任务
在DevCloud首页工具栏选择“服务 > 代码检查”进入,单击“代码检查”首页的“新建任务”创建代码检查任务。创建任务时通过关联项目下代码仓库拉取代码。
2.执行代码检查任务
代码检查任务新建成功后,单击任务所在行开始检查按钮进行执行。
3.查看代码检查报告
检查完成后,单击检查任务名称链接,进入代码检查任务详情页面,可以查看“任务概览”、“源码问题”、“圈复杂度”、“代码重复率”和“包安全”。
基础操作主要包括:登录代码检查首页、新建、执行、修改、查看、删除代码检查任务的初级操作。
更新时间: 2018-11-09 14:05
介绍登录代码检查首页的操作步骤。
操作步骤
1.登录DevCloud首页,在上方功能菜单区单击“服务 > 代码检查”。
进入到代码检查首页,包括“我的任务”、“所有任务”、“我关注的任务”和“检查规则”页签,默认显示“所有任务”页签,如图1所示。
单击“查看详情”可以查看新版本特性列表、修复问题及上线时间。
单击“不再提示”,下次登录不再提示“新版本特性”。
2.查看代码检查的“检查次数”、“问题总数”、“累计检查行”和“计费代码行”。
3.单击“新建任务”,可以新建代码检查任务。
4.在代码检查任务列表中查看检查任务的“归属项目”、“未解决问题数”、“代码行”、“风险指数”等。
说明:
未解决问题数:表示代码检查任务执行后需要处理的问题个数;如果未解决问题数显示“0”,表示检查结果没有需要处理的问题。
代码行:执行代码检查任务所检查的代码行数。
5.选择“检查规则”页签,单击“新增规则集”可以设置代码检查规则及检查规则集。
更新时间: 2018-11-09 14:05
介绍新建代码检查任务的操作步骤。
前提条件
代码仓库已建立并具有权限。
操作步骤
1.登录代码检查首页。
2.单击代码检查任务首页“新建任务”。
进入到“新建任务”页面,如图1所示。
说明:
如果项目下还未添加任何仓库,请单击“确定”前往新建仓库,单击“取消”则返回任务列表。
新建代码检查任务的方式还有一种在项目“看板”页面,选择左侧导航“代码 > 代码检查”,在“任务”页签中单击“新建任务”。
图1 新建任务
代码检查任务参数说明如表1所示。
表1 检查任务参数
参数名
说明
“基本信息”
任务名称
请根据提示信息正确设置。
检查对象
归属项目:选择检查任务所属的项目。
代码仓库:选择所属项目下的代码仓库。
仓库分支:选择代码仓库的分支,即从代码仓库中获取的具有权限的分支。
说明:
归属项目下拉框中的选项为已经创建且当前用户具有权限的项目。
如果没有项目,请先在项目管理中新建项目。
“任务配置”
扫描类型
代码检查的扫描类型,包括如下两种:
静态分析
对源代码进行扫描检查。选中“静态分析”后,请根据实际情况选择“检查语言”类型及对应的规则集。
包安全
对源代码中直接或间接引入的第三方jar包进行扫描检查。
代码安全
对源代码进行安全检查。
检查语言
“扫描类型”选中“静态分析”或“代码安全”后,请根据实际需要选择检查语言类型。
3.(可选)选择检查语言后,单击对应语言类型后的,可以设置“规则集”,如图2所示。
代码检查任务使用的规则集,请根据实际情况设置。
目前规则集支持的语言类型为Java、C++、Android(Gradle)、PHP、C#、JavaScript、Web、CSS和Python。
单击各语言对应的“单击选择待测文件路径”文本框,可以选择目标检查文件的路径。
图2 选择语言规则集
4.单击“更多配置”,可以配置任务执行计划和设置消息通知。
5.单击“确定”,任务新建完成。
更新时间: 2018-11-09 14:05
介绍执行代码检查任务的操作步骤。
前提条件
检查任务已建立并具有权限。
操作步骤
1.登录代码检查首页进入代码检查页面。
2.在代码检查首页下方搜索目标检查任务。
3.单击代码检查任务所在行。
4.(可选)执行完成后,单击任务名称可以查看任务详情。
更新时间: 2018-11-09 14:05
介绍修改代码检查任务的操作步骤。
前提条件
任务创建者、项目创建者或项目管理员可以修改检查任务。
操作步骤
1.登录代码检查首页。
2.在代码检查首页搜索目标任务。
3.单击代码检查任务所在行。
进入“配置任务”页面,可以修改任务的基本信息和任务配置等。
4.修改完成后,单击“确定”,进入代码检查任务详情页面。
更新时间: 2018-11-09 14:05
介绍查看代码检查任务的操作步骤,包括:查看任务概览、源码问题、圈复杂度、代码重复率、包安全以及配置任务等。
前提条件
检查任务已执行完成并具有权限。
操作步骤
1.登录代码检查首页。
2.在代码检查首页搜索目标任务。
3.单击检查任务名称链接。
进入查看代码检查任务详情页面,如图1所示。
图1 代码检查任务详情
4.查看任务概览。
5.查看并修改源码问题。
6.查看并修改代码圈复杂度问题。
7.查看并修改代码重复率问题。
8.查看包安全。
9.单击“配置任务”可以修改代码检查任务。
更新时间: 2018-11-09 14:05
介绍删除代码检查任务的操作步骤。
前提条件
任务创建者、项目创建者或项目管理员可以删除检查任务。
操作步骤
1.登录代码检查首页。
2.在代码检查首页搜索目标任务。
3.单击代码检查任务所在行。
4.根据提示信息单击“确定”进行删除。
进阶操作主要包括:多语言检查、检查规则、任务、包安全、执行计划、源码问题、圈复杂度、代码重复率和消息通知相关的高级操作。
更新时间: 2018-11-09 14:06
多语言质量检查是基于代码仓库中的文件进行扫描检查的,故多语言检查前需要将产品的资源文件上传到DevCloud代码仓库中。
操作步骤
参见“代码仓库”帮助,将产品的资源文件上传到项目的代码库中。
多语言检查服务目前支持5类资源文件:
Android资源:Android资源框架支持的资源文件(xml文件)。
IOS资源:IOS资源框架支持的资源文件(strings文件)。
Properties资源:Java应用开发常用的properties资源文件。
标准Excel资源:多语言检查服务定义的一种固定格式的Excel资源文件。Excel文件第1列为字符串key,第2列为字符串value。
自定义Excel资源:用户自定义的Excel资源文件,包括了字符串Key和Value的Excel文件,但Key和Value所在列由用户自行定义和指定。
更新时间: 2018-11-09 14:05
介绍新建多语言质量检查任务的操作步骤。
前提条件
代码仓库已建立并具有权限。
操作步骤
1.单击代码检查任务首页“新建任务”,进入到“新建任务”页面。
2.在“任务配置”区域,选择“多语言质量扫描”页签,进入“多语言检查”任务配置页面,如图1所示。
图1 新建任务
多语言质量检查任务参数说明如表1所示。
表1 检查任务参数
参数名
说明
“基本信息”
任务名称
请根据提示信息正确设置。
检查对象
归属项目:选择检查任务所属的项目。
代码仓库:选择所属项目下的代码仓库。
仓库分支:选择代码仓库的分支,即从代码仓库中获取的具有权限的分支。
说明:
归属项目下拉框中的选项为已经创建且当前用户具有权限的项目。
如果没有项目,请先在项目管理中新建项目。
“任务配置”
任务类型
代码检查的扫描类型,包括如下两大类:
代码扫描
包含代码静态分析、包安全、代码安全检查。
多语言质量扫描
对多语言资源文件进行扫描检查。
资源类型
选择检查的资源文件的类型。
Android资源:Android资源框架支持的资源文件(xml文件)。
IOS资源:IOS资源框架支持的资源文件(strings文件)。
Properties资源:Java应用开发常用的properties资源文件。
标准Excel资源:多语言检查服务定义的一种固定格式的Excel资源文件。Excel文件第1列列为字符串key,第2列为字符串value。
自定义Excel资源:用户自定义的Excel资源文件,包括了字符串Key和Value的Excel文件,但Key和Value所在列由用户自行定义和指定。
说明:
资源文件需要提前上传到归属项目的代码仓库中。
源语言
可选。多语言资源翻译的基础语言,可选择“中文”或“英文”。
说明:
当检查语言的规则集,选择了“规范性检查”时,必选;否则为可选。
当“资源类型”选择“Android资源”时,检查语言的规则集默认会选择“规范性检查”;当选择其它资源类型时,检查语言的规则集中“规范性检查”为可选规则集。
源语言文件
可选。选择源语言的文件列表。
说明:
源语言文件编码要求为UTF-8,其它说明同“源语言”。
资源标识列
用户自定义Excel资源文件的一条字符串的Key所在的列序号,用列字母表示。例如:输入“A”,即表示字符串的Key在A列。
可选。仅当“资源类型”选择为“自定义Excel资源”时出现。
检查的目标列
用户自定义Excel资源文件的一条字符串的Value所在的列序号,用列字母表示,允许指定多列。例如:输入“B,C,D”,即表示字符串的Value位的于B列、C列和D列。
可选。仅当“资源类型”选择为“自定义Excel资源”时出现。
检查语言
选择要进行多语言质量检查的语言类型,请根据实际需要选择检查语言类型。
文件路径:待检查语言资源文件所在的路径。
规则集:要执行质量检查的规则集。
说明:
检查语言的文件编码要求为UTF-8。
检查规范分为三类:拼写检查、语种混杂检查、规范性检查。
拼写检查:包含单词拼写检查、大小写规范检查、末尾字符检查、前导空格检查、多空格检查。
语种混杂检查:包含标点符号混杂、字符串语言混杂。
规范性检查:包含引号转义检查、换行符检查、无效字符检查、源语言与目标语言的等价性检查、转义字符格式检查、参数顺序性检查、非参数%字符检测、资源存放规范检查、字符串完整性检查、未翻译检查、字符串Key唯一性检查。
3.选择检查语言后,单击对应语言类型后的点击放大,可以设置“规则集”,如图2所示。
4.多语言质量检查任务使用的规则集,请根据实际情况设置。
5.单击各语言对应的“文件路径”后的“增加”按钮,可以选择目标检查文件的路径。
图2 选择语言规则集
6.单击“更多配置”,可以配置任务执行计划和设置消息通知。
7.单击“确定”,任务新建完成。
更新时间: 2018-11-09 14:05
介绍执行多语言代码检查任务的操作步骤。
前提条件
检查多语言质量检查任务已建立并具有权限。
操作步骤
1.在代码检查首页下方搜索要执行的多语言质量检查任务。
2.单击多语言质量检查任务所在行点击放大。
3.(可选)执行完成后,单击任务名称可以查看任务详情。
更新时间: 2018-11-09 14:05
介绍修改多语言代码检查任务的操作步骤。
前提条件
任务创建者、项目创建者或项目管理员可以修改多语言代码检查任务。
操作步骤
1.在代码检查首页搜索目标任务。
2.单击多语言质量检查任务所在行点击放大,进入“配置任务”页面,选择“多语言质量扫描”页签,可以修改任务的基本信息和任务配置等。
3.修改完成后,单击“确定”,进入代码检查任务详情页面。
更新时间: 2018-11-09 14:05
介绍查看多语言质量检查的缺陷问题的操作步骤。
前提条件
检查任务已执行完成并具有权限。
操作步骤
1.在代码检查首页搜索目标任务。
2.单击检查任务名称链接。
3.进入查看代码检查任务详情页面,单击“全球化”页签,进入多语言质量检查问题列表页面,如图1所示。
图1 多语言质量检查问题列表
源码问题操作说明如表1所示。
表1 源码问题操作说明
操作项
说明
未解决问题
单击问题列表上方“未解决问题”,问题列表中仅显示未解决的问题。
所有问题
单击问题列表上方“所有问题”,显示代码检查的所有问题,并按问题严重级别从高到低进行显示。
过滤器(功能研发中)
单击问题列表上方过滤器点击放大,可设置问题过滤条件,下次登录将自动按该过滤条件进行显示。
批量处理(功能研发中)
在问题列表中勾选需要忽略缺陷的问题后,单击问题列表上方“批量处理”,可同时设置忽略多个问题的缺陷。
导出
单击问题列表上方“导出”,以Excel(xls格式)导出当前列表中的所有缺陷问题(包括全部分页内容)。导出完成后,根据提示下载导出的文件包“export.zip”。
说明:
如果导出多个,文件名字自动加上后缀,如“export(2).zip”,“export(3).zip”和“export(N).zip”。
用户可以根据需要对导出文件中的缺陷问题进行编辑。
搜索
在问题列表右上方“搜索”文本框中输入关键字直接搜索问题(支持按问题描述、检查规则和所在文件进行搜索)。
忽略(功能研发中)
单击问题所在行点击放大可忽略问题。
处理(功能研发中)
单击问题所在行点击放大可以设置处理该问题缺陷,将问题设置为已解决。
更新时间: 2018-11-09 14:05
语言类问题通常需要由翻译人员对问题进行确认,这时可以将多语言检查后的问题列表导出,然后将问题列表发给翻译人员确认问题。
前提条件
检查任务已执行完成并具有权限。
操作步骤
1.进入多语言质量检查任务的详情页面。
2.选择“全球化”页签,进入“多语言质量问题”详情页面,如图1所示。
3.单击问题列表上方的导出按钮点击放大,将当前列表中的所有缺陷导出到Excel文件(xls格式)中。
4.导出完成后,根据提示下载导出的文件包“export.zip”。
图1 多语言检查问题列表导出
更新时间: 2018-11-09 14:05
在执行完多语言代码检查任务后,查看问题列表,根据检查出的资源问题及提供的修改建议,打开资源文件,修改代码问题并提交。
前提条件
检查任务已执行完成并具有权限。
操作步骤
1.进入多语言质量检查任务的详情页面。
2.选择“全球化”页签,进入“多语言质量问题”详情页面。
3.单击“问题描述”显示问题详情。
包括文件路径、查看源码(管理员可以根据实际情况编辑源码)、问题级别、问题描述、问题状态、检查规则、以及修改建议等,如 图1、 图2和 图3所示。
图1 拼写检查问题详情
图2 语种混杂问题详情
图3 资源规范性问题详情
4.请根据实际情况单击“修改建议”,查看检查问题详细修复指导。
5.(可选)当确认是问题,单击点击放大,可在线编辑代码仓库中的资源文件代码。
6.(可选)根据实际单击点击放大设置忽略目标问题缺陷,如图4所示。
图4 忽略问题
更新时间: 2018-11-09 14:05
背景信息
代码检查默认支持Java、C++、Android(Gradle)、PHP、C#、JavaScript、Web、CSS和Python语言的规则集;且每种语言类型对应多种不同级别的规则集,如表1所示。根据实际需要可以新增、复制、修改或删除自定义规则集。
表1 默认规则集类型
语言
默认规则集类型
Java
Java致命问题规则集
Java严重问题规则集
Java一般问题规则集
Java提示问题规则集
CSS
CSS致命问题规则集
CSS严重问题规则集
CSS一般问题规则集
CSS提示问题规则集
JavaScript
JavaScript致命问题规则集
JavaScript严重问题规则集
JavaScript一般问题规则集
JavaScript提示问题规则集
Web
Web致命问题规则集
Web严重问题规则集
Web一般问题规则集
C++
C++致命问题规则集
C++严重问题规则集
C++一般问题规则集
C++提示问题规则集
Android(Gradle)
Android(Gradle)致命问题规则集
Android(Gradle)严重问题规则集
Android(Gradle)一般问题规则集
Android(Gradle)提示问题规则集
PHP
PHP致命问题规则集
PHP严重问题规则集
PHP一般问题规则集
PHP提示问题规则集
C#
C#致命问题规则集
C#严重问题规则集
C#一般问题规则集
C#提示问题规则集
Python
Python致命问题规则集
Python严重问题规则集
Python一般问题规则集
Python提示问题规则集
操作步骤
1.登录代码检查首页。
2.单击首页“检查规则”页签。
进入检查规则列表页面,如图1所示。
图1 规则集列表
说明:
系统规则集和已使用的规则集不能删除。
系统规则集只能查看和复制。
请根据需要创建、修改、删除、查看、复制或配置规则集,具体操作说明如表2所示。
表2 规则集操作说明
操作项
说明
搜索
检查规则支持输入关键字搜索。
筛选
检查规则支持“筛选”,设置自定义过滤条件后,下次登录将自动按该过滤条件进行显示。
单击,可根据实际需要设置过滤条件值,如图2所示。
图2 自定义过滤
新增规则集
单击“新增规则集”可以新增自定义规则集。
修改(配置)规则集
根据实际需要配置规则集。
删除规则集
单击规则集所在行可以删除检查规则集。
查看规则集
单击规则集名称可以查看检查规则集详情。
复制规则集
单击规则集所在行 ,在弹出的 “复制检查规则集”窗口设置规则集名称后,单击 “确定”。
说明:
规则集名称不能重名。
设置规则集
将新建好的规则集设置为任务检查规则集。
更新时间: 2018-11-09 14:05
背景信息
规则详情包含:问题级别(如“一般”)、“正确示例”、“错误示例”以及“修改建议”等。
操作步骤
1.登录代码检查首页。
2.单击首页“检查规则 > 规则”页签。
显示规则列表页面。
3.单击规则名称(如“"!important" 注解不应该被使用”)。
显示规则详情,如 图1所示。
图1 检查规则详情
更新时间: 2018-11-09 14:05
前提条件
目前仅支持配置单语言的规则集,即一种规则集只能配置同一种语言类型的检查规则。
背景信息
代码检查除了如表1 默认规则集类型外,还可以根据实际需要自定义代码检查规则集。
每个规则集模板至少需设置一条规则。
操作步骤
1.登录代码检查首页单击“检查规则”页签。
默认进入规则集列表页面。
2.单击“新增规则集”,即添加自定义代码检查规则集。
在弹出的“新建检查规则集”窗口设置规则集名称,单击“确定”。
3.给规则集配置检查规则。
单击目标自定义规则集所在行。
进入检查规则集配置页面。默认显示“已配置规则”页签,如图1所示。
图1 配置检查规则
在“已配置规则”页签,勾选目标规则后,单击可以关闭已配置的规则或单击规则所在行关闭单个配置规则。
关闭的配置规则显示在“可配置规则”页签中。
选择“可配置规则”页签,勾选目标规则后,单击可以打开规则或单击规则所在行打开单个配置规则。
打开的配置规则显示在“已配置规则”页签中。
4.将代码检查任务使用的检查规则集修改为自定义规则集。
进入代码检查任务详情页面,单击“配置任务”,在“任务配置”区域选中目标语言已配置好的自定义规则集,如图2所示。
更新时间: 2018-11-09 14:05
背景信息
检查规则集如果已关联在代码检查任务中,则无法被删除。将关联使用该规则集的代码检查任务删除、或将代码检查任务关联其它规则集后,即可删除自定义规则集。
前提条件
只有创建者或管理员可以删除规则集。
系统规则集和已被使用的规则集不能删除。
操作步骤
1.单击代码检查首页“检查规则”页签。
进入规则集列表页面。
2.单击状态为“使用中”的自定义规则集所在行,可以查看当前规则集被使用的代码检查任务列表,如图1所示。
图1 规则集被使用任务列表
3.如果检查规则集已被使用,请先将使用该规则集的代码检查任务删除、或将代码检查任务改用其它规则集。
4.单击检查规则集所在行,删除检查规则集。
更新时间: 2018-11-09 14:05
背景信息
新建代码检查任务,需要选择“规则集”的文件路径:
如果文件路径为空,即不选时,则检查所选仓库分支的所有代码。
如果设置指定文件路径,则只对指定路径下的文件进行检查。
同一种语言类型的规则集路径需要保持一致。
文件路径不支持修改。
操作步骤
1.进入新建代码检查任务或修改代码检查任务页面。
2.在“任务配置”区域,根据实际单击单击目标语言前的,在“文件路径”中“点击选择待测文件”,设置目标检查文件的路径(如“src/test”),如图1所示。
图1 文件路径
3.文件路径设置后,执行代码检查任务,将按照设置的路径执行检查。
更新时间: 2018-11-09 14:05
背景信息
在代码检查中执行完代码检查任务后,可以查看检查结果的任务概览。
操作步骤
1.进入代码检查任务详情页面。
2.默认显示“任务概览”页签,如图1所示。
图1 任务概览
查看包安全
更新时间: 2018-11-09 14:05
背景信息
包安全是将源代码中直接或间接引入的第三方jar包以层级结构进行呈现。根据实际需要进行查看。
前提条件
新建或修改代码检查任务时,“扫描类型”已选中“包安全”。
操作步骤
1.进入代码检查任务详情页面。
2.选择“包安全”页签,进入包安全详情页面,可以查看到源代码所引用的第三方包列表,如图1所示。
图1 包安全
配置任务执行计划
更新时间: 2018-11-09 14:05
背景信息
在“任务配置 > 更多配置”中,可以根据需要配置代码检查任务的执行计划。
操作步骤
1.进入代码检查任务详情页面。
2.在“任务配置”区域,单击“更多配置”,显示“执行计划”,如图1所示。
图1 执行计划
表1 执行计划配置参数说明
参数项
说明
根据需要配置执行计划的类型,默认类型为“手工执行”,“执行计划”类型如下:
手工执行
即不设置定时时间,根据实际情况单击“开始构建”进行手动执行构建。
每日定时执行
设置每天的某一时间进行定时构建,格式为“HH:MM”,如每天八点,则填写“08:00”。
每周定时执行
设置每周某天的某一时间进行定时构建。构建日期为周一至周日,选中构建日期(如“周一”)后,再填写构建时间,“HH:MM”(如“08:00”)。
修改源码问题
更新时间: 2018-11-09 14:05
背景信息
在代码检查中执行完代码检查任务后,查看代码质量看板,根据检查出的源码问题及提供的修改建议,打开代码源文件,修改代码问题并提交。
操作步骤
1.进入代码检查任务详情页面。
2.选择“源码问题”页签。
进入“源码问题”详情页面,如图1所示。
表1 源码问题操作说明
操作项
说明
未解决问题
单击问题列表上方“未解决问题”,问题列表中仅显示未解决的问题。
所有问题
单击问题列表上方“所有问题”,显示代码检查的所有问题,并按问题严重级别从高到低进行显示。
过滤器
单击问题列表上方过滤器可设置问题过滤条件,下次登录将自动按该过滤条件进行显示。
批量处理
在问题列表中勾选需要忽略缺陷的问题后,单击问题列表上方“批量处理”可同时设置忽略多个问题的缺陷。
导入忽略
单击问题列表上方“导入忽略”文件。
导出
单击问题列表上方“导出”,以Excel(xls格式)导出当前列表中的所有缺陷问题(包括全部分页内容)。导出完成后,根据提示下载导出的文件包“export.zip”。
说明:
如果导出多个,文件名字自动加上后缀,如“export(2).zip”,“export(3).zip”和“export(N).zip”。
用户可以根据需要对导出文件中的缺陷问题进行编辑。
搜索
在问题列表右上方“搜索”文本框中输入关键字直接搜索问题(支持按问题描述、检查规则和所在文件进行搜索)。
忽略
单击问题所在行可忽略问题。
历史记录
单击问题所在行查看问题的“历史操作记录”。
规则不检查
单击问题所在行可以设置“不再检查该规则”。
3.单击“问题描述”显示问题详情。
包括文件路径、查看源码(管理员可以根据实际情况编辑源码)、问题级别、问题描述、问题状态、检查规则、以及修改建议等,如 图2所示。
图2 问题详情
请根据实际情况单击“修改建议”修改代码检查问题。
(可选)根据实际单击设置忽略目标问题缺陷,如图3所示。
图3 忽略问题
说明:
4.根据实际需要可以设置“忽略同一规则检查出的所有问题”。
5.(可选)根据实际需要单击设置目标问题“不再检查该规则”。
提交修改代码并再次执行代码检查任务,查看代码质量看板,对比风险指数。
导入已忽略问题
更新时间: 2018-11-09 14:05
背景信息
导入文件格式支持xls和xlsx。
通过编辑已导出的Excel缺陷文件,导入忽略问题。
导出未解决的问题后,在Excel中进行分析,并在Excel中设置分析结果,如果分析结果设置为“已忽略”,导入Excel后,忽略的问题自动忽略。
操作步骤
1.进入代码检查任务详情页面。
2.选择“源码问题”页签,单击页面右上方“导出”按钮,问题列表即可被导出为Excel文件。
3.打开Excel文件,选择要忽略的问题,修改问题状态为“已忽略”,并保存,如图1所示。
图1 Excel问题列表
4.在代码检查“源码问题”页签,单击“导入忽略”按钮,选择上一步中已保存的Excel文件上传,上传完毕后,弹窗提示已忽略的问题个数。
5.根据提示单击“确定”完成上传。
修改代码圈复杂度问题
更新时间: 2018-11-09 14:05
1.进入代码检查任务详情页面。
2.选择“圈复杂度”页签,可以查看已检验的源码圈复杂度。
圈复杂度问题有 “列表结构”和 “目录结构”两种显示方式,默认以 “列表结构”显示,如 图1所示。
图1 圈复杂度
3.单击问题描述进入文件详情页面,可以查看文件源码。
4.单击修改按钮,进入文件编辑页面进行在线修改。
通过减少if、while、for等函数或and、or等表达式可以降低代码圈复杂度。
修改代码重复率问题
更新时间: 2018-11-09 14:05
1.进入代码检查任务详情页面。
2.选择“代码重复率”页签,进入代码重复率详情页面,可以查看已检验的源文件的代码重复率。
3.通过代码重复率报表评估代码质量风险代码重复率。
4.单击文件进入文件详情页面。
5.默认显示文件路径,单击文件路径展开文件;单击文件名称,可以查看文件源码,文件左侧行的竖线标识了重复的代码块,单击标识竖线,将会显示与该段代码重复的代码块。
单击修改按钮,进入文件编辑页面进行在线修改。
管理员可以根据实际情况修改重复源代码。
开启消息通知
更新时间: 2018-11-09 14:05
背景信息
在“任务配置 > 更多配置”中,可以根据需要开启消息通知。
操作步骤
1.进入代码检查任务详情页面。
2.在“任务配置”区域,单击“更多配置”,显示“消息通知”。
3.单击(表示未开启)可以开启事件类型的通知状态。
事件类型目前支持“任务检查完成”和“删除任务”。
通知方式目前支持“服务动态”和“邮件”。
屏蔽消息通知
更新时间: 2018-11-09 14:05
背景信息
在“任务配置 > 更多配置”中,可以根据需要屏蔽(关闭)消息通知。
操作步骤
1.进入代码检查任务详情页面。
2.在“任务配置”区域,单击“更多配置”,显示“消息通知”。
3.单击(表示已开启)可以关闭事件类型的通知状态。
事件类型目前支持“任务检查完成”和“删除任务”。
通知方式目前支持“服务动态”和“邮件”。
更新时间: 2018-12-21 16:36
目的
通过视频模拟演示代码检查的过程,支撑完成一个JavaWeb项目的交付。
使用代码检查减少代码安全漏洞
使用“代码检查”检查代码漏洞和不规范书写,优化代码质量,规范开发人员编码习惯,为项目的长期稳定打下良好基础,请参见
Java on DevCloud-4:代码检查