检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
华为内部(15W+开发人员,日均500亿行扫描)大规模持续使用和打磨而成。 覆盖了业界主流开发语言,针对代码的可读、可维护、安全、可靠、可测试、高效、可移植等方面进行全面的分析。 融合了多年对代码质量及可信度提升方面持续思考与探索、实践,积累了丰富的检查规则。 父主题: 产品特性
什么是代码检查 代码检查(CodeArts Check)是基于云端实现的代码检查服务。建立在多年自动化源代码静态检查技术积累与企业级应用经验的沉淀之上,为用户提供代码风格、通用质量与网络安全风险等丰富的检查能力,提供全面质量报告、便捷闭环处理问题,帮助企业有效管控代码质量,助力企业成功。
单击任务名称时提示权限不足 问题现象 在代码检查服务任务列表中,单击任务名称,提示权限不足。 原因分析 操作的用户项目权限不足,当账号的项目权限为“测试经理”、“测试人员(含跨租户)”、“浏览者(含跨租户)”时,没有访问查看代码检查任务的权限。 处理方法 联系项目管理员(项目创建者、项目经理)修改当前账号角色。
不上传代码到云服务的情况下使用代码检查服务 应用场景 部分用户的代码有严格的保密机制,不允许将代码上传到外部网络,用户希望仅在信任的自有执行机上完成代码扫描服务。华为云CodeArts Check为此提供本实践的扫描方案,在不上传代码到云服务的情况下使用代码检查服务检查代码问题。
历史扫描结果查询 功能介绍 提供每次扫描的问题数量统计 调用方法 请参见如何调用API。 URI GET /v2/{project_id}/tasks/{task_id}/checkrecord 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String
该限制仅适用于规则集中只包含自定义规则。 浏览器 目前适配的主流浏览器类型包括: Chrome浏览器:支持和测试最新的3个稳定版本 Firefox浏览器:支持和测试最新的3个稳定版本 Edge浏览器:Win10默认浏览器,支持和测试最新的3个稳定版本 推荐使用Chrome、Firefox浏览器,效果会更好。 分辨率
查看规则集的规则列表 功能介绍 根据项目ID、规则集ID等条件查询规则列表。 调用方法 请参见如何调用API。 URI GET /v2/{project_id}/ruleset/{ruleset_id}/rules 表1 路径参数 参数 是否必选 参数类型 描述 project_id
获取项目ID 调用API获取项目ID 项目ID还用通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects/”,其中“{Endpoint}”为IAM的终端节点,可以从终端节点获取。接口的认证鉴权请参见认证鉴权。
、修改建议。 规则集 针对具体语言而定义的检查规则集合,提高用户代码质量。 圈复杂度 圈复杂度是一种代码复杂度的衡量标准,与其可维护性和可测试性之间存在相关性,这意味着在圈复杂度较高的文件中,重构代码出错的概率较高。代码平均圈复杂度 = 总圈复杂度/函数数。具体风险评估建议如下:
"merge_request", #事件类型,MR请求 "action": "open", #状态,open为MR开启状态 "title": "测试" #任务标题,根据需求填写 } } 新建增量任务的返回结果。 响应值为增量任务的任务ID,该ID在任务列表界面不可见,仅用于通过API接口创建、执行和查询MR任务的场景。
使用Jenkins插件集成CodeArts Check执行代码检查 应用场景 Jenkins是一款由Java编写的开源的持续集成工具,它运行在Servlet容器中(例如Apache Tomcat),可以通过各种方式触发构建。例如提交给版本控制系统时被触发、通过类似Cron的机制调
CodeArts Check插件使用指南(IntelliJ IDEA版本) 本插件致力于守护开发人员代码质量,成为开发人员的助手和利器。秉承极简、极速、即时看护的理念,提供业界规范的检查、代码风格一键格式化及代码自动修复功能。 安装CodeArts Check插件 在IDEA IDE编辑器顶部菜单栏选择“File
使用自定义规则检查CodeArts Repo代码仓中的代码质量 应用场景 随着现在项目的代码量越来越大,以及现有开发框架的增加,静态分析所需要覆盖的场景也日益增多,存在的问题如下: 传统静态分析引擎靠工具提供通用规则来对常见安全,风格和质量场景下的编码问题进行扫描分析,难以实时覆盖不同用户特定场景下的代码问题。
包年/包月 包年/包月套餐说明 代码检查服务采用包年/包月、并发扩展计费模式,提供基础版、专业版套餐,以满足不同规模用户的使用需求。并支持安全增强能力、并发扩展能力叠加。 不同版本套餐中,提供的功能特性及资源规格略有不同,详情请参见表1。 代码检查资源扩展包:在CodeArts或CodeArts
终止检查任务 功能介绍 根据任务ID终止检查任务。 调用方法 请参见如何调用API。 URI POST /v2/tasks/{task_id}/stop 表1 路径参数 参数 是否必选 参数类型 描述 task_id 是 String 任务ID,即新建检查任务接口的返回值,每个C
新增的成员需赋予指定的角色,不同角色具备的默认权限不同。各角色具备的默认权限如表1。 表1 代码检查服务默认角色权限 资源权限/角色 项目管理员 项目经理 开发人员 测试经理 测试人员 参与者 浏览者 运维经理 产品经理 系统工程师 Committer 检查任务 创建 √ √ √ × × × × × × √ √ 执行
Cmetrics工具规格说明 工具介绍 Cmetrics是华为公司自研代码度量工具,通过扫描源码对各项指标进行度量。度量指标包括代码量、函数圈复杂度、文件代码行、函数代码行、文件重复、代码重复、危险函数、冗余代码等多项指标。当前工具版本为2.1.5。 参数说明 表1 参数说明 参数
单击Webhook文本框旁的“复制”,获取钉钉Webhook地址。 将“钉钉通知”开关设置为状态。 选择通知场景,并填写Webhook地址,单击“测试”确保Webhook地址可用。 单击“保存”。 配置完成后,当任务运行结果满足事件类型时,代码检查服务会发送消息到指定的钉钉群。 配置代码检查服务企业微信通知
查询任务列表 功能介绍 根据project_id查询该项目下的任务列表。 调用方法 请参见如何调用API。 URI GET /v2/{project_id}/tasks 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,每个Code
得分控制风险。 场景特点:项目经理的共识“从前端保证质量,把质量做在日常交付”,但经常没有有效的工具平台,目前大部分的质量工作还是依赖后端测试。 适用场景:项目经理迭代交付质量控制。