代码扫描
扫描任务
扫描任务能够在代码构建过程中帮助开发人员快速、有效的定位代码缺陷并及时纠正这些问题,高效检测软件缺陷和安全隐患,提供优秀的静态源代码分析解决方案。
菜单路径
“产品与服务”→“软件开发”→“代码扫描”→“扫描任务”
创建任务
选择一个构建关联对应的检查对象、检查语言、触发器类型,目前扫描类型为静态分析,选择检查策略实现代码检查。
操作步骤
1.登录控制台。
2.点击“产品与服务”选择“软件开发”>“代码扫描”>“扫描任务”,进入代码检查页面。
3.点击“+ 创建任务”,进入创建检查项目页面。
4.基本信息和源码库配置。
属性名称 | 填写规则 |
---|---|
检查名称 | 1-50个字符,只能以字母开头,只可包含字母、数字、下划线及中横线。 |
源码库类型 | 支持代码仓库代码托管、GitLab、码云、GitHub、Gitea |
输入访问令牌 | 选择已配置凭据或自定义方式 |
访问令牌 | 选择或输入对应源代码库的访问令牌 |
项目地址 | 选择或输入对应源代码库的项目 |
主干分支名称 | 选择访问令牌和项目地址来获取分支 |
5.扫描配置。
属性名称 | 填写规则 |
---|---|
代码扫描路径 | 使用相对路径,且路径名由字母、数字、下划线、中横线和/组成,并以/结尾。可以输入多个路径,中间由","隔开。 |
排除路径 | 路径名由字母、数字、下划线、中横线、星号和/组成,可以输入多个路径 |
扫描方案 | 根据语言选择扫描方案 |
5.1编译配置。
属性名称 | 填写规则 |
---|---|
编译工具 | 根据源代码语言选择编译工具 |
编译命令 | 编写编译命令 |
5.2单元测试配置。
属性名称 | 填写规则 |
---|---|
语言 | 目前支持Go和Java语言单元测试 覆盖率统计 |
执行路径 | 使用相对路径,且路径名由字母、数字、下划线、中横线和/组成,可以输入多个路径,中间由","隔开例如./build/classes |
测试文件目录 | 使用相对路径,且路径名由字母、数字、下划线、中横线和/组成,可以输入多个路径,中间由","隔开例如./build/classes |
覆盖率排路径 | 路径名由字母、数字、下划线、中横线、星号和/组成,可以输入多个路径,例如 |
5.3质量门禁。
属性名称 | 填写规则 |
---|---|
可靠性 | 选择平台默认的A、B、C、D等级 |
单元测试覆盖率 | 选择一定比例 |
重复项 | 选择一定比例 |
5.4 和并请求质量报告及高级配置
5.5触发配置。
属性名称 | 填写规则 |
---|---|
代码源触发 | 选择推送到主干分支时或通过合并请求时 |
检查结果
查看质量门禁检查结果、代码类型占比、测试覆盖率等信息,发现代码存在的异常信息,系统会提供修改建议等。
操作步骤
1.登录控制台。
2.点击“产品与服务”选择“软件开发”>“代码扫描”>“扫描任务”,进入检查任务页面。
操作名称 | 详解 |
---|---|
查询 | 支持模糊查询 |
检查名称 | 检查名称超链接,查看基本信息及关联信息 |
刷新 | 刷新代码检查列表 |
执行 | 扫描任务开始执行 |
停止 | 扫描任务开始终止 |
日志 | 扫描任务执行日志 |
编辑 | 编辑检查项目 |
删除 | 删除代码检查项目,删除数据不可恢复与访问,请谨慎操作! |
3.点击“检查结果”,进入总览页面。
4.点击上方导航栏“问题”,进入页面。
展示出该任务下应用的所有规则信息,可根据类型、严重程度、标签等信息筛选显示。
5.点击上方“代码”,进入页面
检测代码行数、bug、漏洞、单元测试覆盖率和重复率等。
扫描方案
扫描方案能够在代码构建过程中帮助开发人员用来检查编译器无法发现的更复杂一点的错误,最大可能避免(可能出现的)运行错误。通过设置规则检查软件缺陷和安全隐患。
菜单路径
“产品与服务”→“软件开发”→“代码扫描”→“扫描方案”
属性名称 | 属性说明 |
---|---|
方案名称 | 默认的扫描方案名称和自定义扫描方案名称 |
类型 | 系统和自定义 |
描述 | 该方案基本信息介绍 |
创建时间 | 方案的生成时间 |
操作 | 默认时候编辑和删除不能操作 |
推荐扫描方案
系统提供默认的Angular推荐扫描方案、Go推荐扫描方案、Java推荐扫描方案,默认扫描方案包含常用规则。
操作步骤
1.登录控制台。
2.点击“产品与服务”选择“软件开发”>“代码扫描”>“扫描方案”>“方案名称链接”,
3.规则集:是一个或者一组用于不同开发语言的代码检查规则的集合,可识别影响开发效率的问题,代码中的关键问题和风险等,显示该扫描方案包含的规则集。
属性名称 | 属性说明 |
---|---|
名称 | 系统默认的各类规则集合和创建规则集名称 |
类型 | 默认为系统,可 |
规则数 | 显示该规则下的规则数量 |
更新时间 | 该规则更新日期 |
创建时间 | 该规则创建日期 |
配置 | 不能操作,默认支持所有规则 |
删除 | 不能操作 |
4.全部规则集:显示所有语言的规则集。
5.继承当前方案:新建扫描方案,以该扫描方案为基本进行修改。
操作名称 | 详解 |
---|---|
查询 | 1-50个字符,只能以字母开头,只可包含字母、数字、点、下划线及中横线。 |
刷新 | 输入描述该方案的描述信息。 |
6.创建规则集:可用于满足不同开发语言并定制化专项需求的检查规则集。
操作名称 | 详解 |
---|---|
新规则集名称 | 1-50个字符,只能以字母、数字、下划线开头,不能以点结尾,只可包含字母、数字、点、下划线及中横线且不能连续出现点。 |
检查语言 | 选择某种语言。 |
7.复制:创建出与被复制对象包含完全一致规则的集和。
操作名称 | 详解 |
---|---|
规则集名称 | 1-50个字符,只能以字母开头,只可包含字母、数字、点、下划线及中横线。 |
基于 | 根据用户点击的被复制规则集自动填充 |
自定义扫描方案
系统自定义扫描方案,用户根据需求选择合适的规则集。
操作步骤
1.登录控制台。
2.点击“产品与服务”选择“软件开发”>“代码扫描”>“扫描方案”>“自定义扫描方案”,
属性名称 | 属性说明 |
---|---|
扫描方案名称 | 1-50个字符,只能以字母开头,只可包含字母、数字、点、下划线及中横线 |
规则集 | 根据用户所选语言自动加载当前语言的规则集列表 |
描述 | 对自定义扫描方案的说明 |
3.扫描方案更新规则集,由基础规则集更改为newRule规则集
4.点击“配置”,进入激活规则页面。
属性名称 | 属性说明 |
---|---|
Active | 激活单条检查规则,激活后自动刷新当前规则集 |
All Active | 激活该语言下的全部检查规则,激活后自动刷新当前规则集 |
5.点击“规则数”,进入取消页面。
属性名称 | 属性说明 |
---|---|
Deactive | 取消单条检查规则,取消后自动刷新当前规则集 |
All Deactive | 取消该语言下的全部检查规则,取消后自动刷新当前规则集 |
6.点击“删除”,进入删除规则集页面。