.Net项目github接入sonarcloud

2023-11-18

代码质量方面的检测工具,在这之前从来没用过,就算前阵子听说了sonarcloud,也仅当知道记录了下,结果昨天被某些事情刺激了下,于是去查了下资料,然后就顺便在github上做了下测试,这里做个记录。

sonarcloud的官网地址是https://sonarcloud.io,打开后点击Log in,在打开的界面中选择With GitHub进行登录
在这里插入图片描述
授权后,按界面一路点击下去,在导入完账号组织信息后,就可以选择你要对哪些项目做QA,如果不花钱只能选择开源项目,选完后就会出来配置以下界面
在这里插入图片描述
然后你就可以点击一个项目进行相应的配置,因为Travis CI没玩过,所以这里还是选GitHub Actions
在这里插入图片描述
然后就是按步骤一步步做下去
在这里插入图片描述
先是在github对应项目上配置SONAR_TOKEN
在这里插入图片描述
然后再第二步中选择.NET选项
在这里插入图片描述
刚开始看到安装JDK还楞了下,后来仔细看了下完整的脚本指令,发现有个dotnet tool指令,确认应该是没搞错,接下来就是到github上去配置Actions
在这里插入图片描述
在打开的界面调整下文件名,然后再将sonarcloud上的脚本指令完整的复制过来,注意<insert_your_clean_build_command>这段是要调整为实际的执行脚本,在这里就是dotnet build,中间也算是弄了一点小插曲,一开始是报了虚拟服务器latest的windows版本是2022,按相应的描述链接,调整了runs-on: windows-2019,然后因为我项目的sln文件不在项目的根目录下,所以dotnet相关的指令还需要指定sln文件地址,具体的dotnet指令可以看这里,默认是每次提交都会执行Action
在这里插入图片描述

最终脚本通过之后,就可以在sonarcloud上看到具体的代码质量信息
在这里插入图片描述
这个界面上只能看问题的汇总信息,这些图标是无法点击跳转的,需要点击进项目之后,点击Main Branch之后,相应的数字才能够点击跳转
在这里插入图片描述

接下来就是有BugBugCode Smells就类似于VS里的warning信息,可看情况进行修复,不过实际会发现有些检测结果代码是正确的,但sonarcloud提示有误,这时候你可以在相应的问题上调整相应的解决标志
在这里插入图片描述
我试验项目检测出来的5个Bug,看下来居然没一个是Bug,只是单元测试这块,因为我项目根本没写,所以覆盖率Coverage是0……

2022-03-11Coverage终于也补上了,不过是另一个项目
在这里插入图片描述

最后是链接地址汇总:
sonarcloud官网:https://sonarcloud.io
dotnet指令:https://docs.microsoft.com/zh-cn/dotnet/core/tools/dotnet-build
sonarQube配置:https://blog.csdn.net/qq_28911061/article/details/105618801
测试覆盖率:https://blog.51cto.com/u_15060508/4402217

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

.Net项目github接入sonarcloud 的相关文章

  • 检测到 NuGet 包的版本冲突

    我正在开发 ASP Net core 2 1 Web 应用程序项目 我的解决方案中有 1 个项目和 3 个其他库 它是高级架构 数据访问层 DAL 业务层 BL 公共层 CL 所以我需要添加引用来连接一些库和项目 我已经添加了CL参考我的项
  • 在 C++ 中分割大文件

    我正在尝试编写一个程序 该程序接受一个大文件 任何类型 并将其分成许多较小的 块 我想我已经有了基本的想法 但由于某种原因我无法创建超过 12 kb 的块大小 我知道谷歌等上有一些解决方案 但我更感兴趣的是了解这个限制的根源是什么 然后实际
  • 如何进行带有偏差的浮点舍入(始终向上或向下舍入)?

    我想以偏置舍入浮动 要么总是向下 要么总是向上 代码中有一个特定的点 我需要这个 程序的其余部分应该像往常一样四舍五入到最接近的值 例如 我想四舍五入到最接近的 1 10 倍数 最接近 7 10 的浮点数约为 0 69999998807 但
  • 为什么基类必须有一个带有 0 个参数的构造函数?

    这不会编译 namespace Constructor0Args class Base public Base int x class Derived Base class Program static void Main string a
  • 当我单击 C# 中的“取消”按钮时重定向到新页面(Web 部分)

    Cancel button tc new TableCell btnCancel new Button btnCancel Text Cancel btnCancel Click new EventHandler btnCanel Clic
  • try-catch 中未处理的异常

    try list from XElement e in d Descendants wix File where e Attribute Name Value Contains temp Name e Parent Parent Attri
  • 为什么 FTPWebRequest 或 WebRequest 通常不接受 /../ 路径?

    我正在尝试从 ftp Web 服务器自动执行一些上传 下载任务 当我通过客户端甚至通过 Firefox 连接到服务器时 为了访问我的目录 我必须指定如下路径 ftp ftpserver com AB00000 incoming files
  • 组合框项目为空但数据源已满

    将列表绑定到组合框后 其 dataSource Count 为 5 但组合框项目计数为 0 怎么会这样 我习惯了 Web 编程 而且这是在 Windows 窗体中进行的 所以不行combo DataBind 方法存在 这里的问题是 我试图以
  • C# 编译器如何决定发出可重定向的程序集引用?

    NET Compact Framework 引入了可重定向程序集引用 现在用于支持可移植类库 基本上 编译器会发出以下 MSIL assembly extern retargetable mscorlib publickeytoken 7C
  • std::bind 重载解析

    下面的代码工作正常 include
  • Silverlight Datagrid:在对列进行排序时突出显示整个列

    我的 Silverlight 应用程序中有一个 DataGrid 我想在对该列进行排序时突出显示整个列 它在概念上与上一个问题类似 Silverlight DataGrid 突出显示整列 https stackoverflow com qu
  • gdb查找行号的内存地址

    假设我已将 gdb 附加到一个进程 并且在其内存布局中有一个文件和行号 我想要其内存地址 如何获取文件x中第n行的内存地址 这是在 Linux x86 上 gdb info line test c 56 Line 56 of test c
  • 内核开发和 C++ [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 从我know https stackoverflow com questions 580292 what languages are windo
  • Fluent NHibernate 日期时间 UTC

    我想创建一个流畅的 nhibernate 映射来通过以下方式映射 DateTime 字段 保存时 保存 UTC 值 读取时 调整为本地时区值 实现此映射的最佳方法是什么 就我个人而言 我会将日期存储在 UTC 格式的对象中 然后在读 写时在
  • 同时从多个流中捕获、最佳方法以及如何减少 CPU 使用率

    我目前正在编写一个应用程序 该应用程序将捕获大量 RTSP 流 在我的例子中为 12 个 并将其显示在 QT 小部件上 当我超过大约 6 7 个流时 问题就会出现 CPU 使用率激增并且出现明显的卡顿 我认为它不是 QT 绘制函数的原因是因
  • 如何在 GCC 5 中处理双 ABI?

    我尝试了解如何克服 GCC 5 中引入的双重 ABI 的问题 但是 我没能做到 这是一个重现错误的非常简单的示例 我使用的GCC版本是5 2 如您所见 我的主要函数 在 main cpp 文件中 非常简单 main cpp include
  • 为什么 Ajax.BeginForm 在 Chrome 中不起作用?

    我正在使用 c NET MVC2 并尝试创建一个 ajax 表单来调用删除数据库记录 RemoveRelation 的方法 删除记录的过程正在按预期进行 删除记录后 表单应调用一个 JavaScript 函数 从视觉效果中删除该记录 Rem
  • 热重载时调用方法

    我正在使用 Visual Studio 2022 和 C 制作游戏 我想知道当您热重新加载应用程序 当它正在运行时 时是否可以触发一些代码 我基本上有 2 个名为 UnloadLevel 和 LoadLevel 的方法 我想在热重载时执行它
  • boost::program_options:带有固定和可变标记的参数?

    是否可以在 boost program options 中使用此类参数 program p1 123 p2 234 p3 345 p12 678 即 是否可以使用第一个标记指定参数名称 例如 p 后跟一个数字 是动态的吗 我想避免这种情况
  • 如何使用 std::array 模拟 C 数组初始化“int arr[] = { e1, e2, e3, ... }”行为?

    注意 这个问题是关于不必指定元素数量并且仍然允许直接初始化嵌套类型 这个问题 https stackoverflow com questions 6111565 now that we have stdarray what uses are

随机推荐

  • oracle数据库中输入date类型的数据

    给oracle数据库已有记录中更新date类型的数据 插入date类型的格式 to date 2016 01 03 12 23 19 yyyy mm dd hh24 mi ss 2016 01 03 12 23 19 表示想要插入的时间 y
  • 华为鸿蒙os今日新闻,华为正式发布鸿蒙OS,却再次被质疑

    6月2日 市场瞩目的鸿蒙产品发布会成功举办 此次华为还连发三款搭载鸿蒙系统的硬件 华为 MatePad Pro 平板 华为 Watch 3 智能手表和华为 FreeBuds 4 TWS 耳机 但事情总有两面性 喜欢你的不论你做什么都会被看好
  • 小白入坑-利用express构建一个简单的Node项目

    做了部分前端的东西 当然不能局限眼前的成果 梦想能成为全栈的大佬 然后左手一个小姐姐 右手一个富萝莉 走远了 奈于java对前端来说比较难 耗费的学习时间也比较长 所以先从node下手过一下瘾儿 首先 win r打开windows的运行框
  • 什么是堡垒机

    什么是堡垒机 1 堡垒机是用来解决 运维混乱 的 堡垒机是用来干什么的 简而言之一句话 堡垒机是用于解决 运维混乱 的 何谓运维混乱 当公司的运维人员越来越多 当需要运维的设备越来越多 当参与运维的岗位越来越多样性 如果没有一套好的机制 就
  • Git入门超详细文档

    Git Git概述 Git是一个免费的 开源的分布式版本控制系统 可以款速高效的处理从小型到大型的各种项目 Git易于学习 占地面积小 性能极佳 它具有廉价的本地库 方便的暂存区域和多个工作流分支等特性 其性能优于Subversion CV
  • 试除法判定质数模板题

    试除法判定一个数是否为质数类似于这道题 代码 include
  • mac文件夹权限的@

    demo是网站根目录 终端下执行 cd到demo ls l 显示 drwxr xr x 9 andy admin 306 10 12 17 43 demo 这里的 貌似是mac特有的 第一次使用file put contents往根目录添加
  • QMutex使用时遇到的错误

    class A public explicit A QObject parent 0 A public QMutex m mutex class B public explicit B QObject parent 0 B private
  • C语言笔记 第三章 键盘输入与输出

    文章目录 1 printf 1 1 整型 1 2 字符型 1 3 浮点型 1 4 其他 1 4 1 标志 1 4 2 输出最小宽度 1 4 3 精度 1 4 4 类型长度 1 5 转义字符 2 scanf 2 1scanf 函数的一般形式
  • 网络安全----应急响应入侵排查

    系列文章目录 Web网络安全 红蓝攻防之信息收集 Web网络安全 Log4j高危漏洞原理及修复 Shell分类详解 图形界面 命令行式 Linux安全 应急溯源常用命令 记一次实战成功溯源反制getshell 文章目录 系列文章目录 一 应
  • ADS1256驱动程序

    1 初始化 接口 SPI2 STM32 ADS1256 NSS PB12 CS SCK PB13 SCLK MISO PB14 DOUT MOSI PB15 DIN PB10 DRDY PB11 RESET
  • 感知机介绍及实现

    感知机 perceptron 由Rosenblatt于1957年提出 是神经网络与支持向量机的基础 感知机是最早被设计并被实现的人工神经网络 感知机是一种非常特殊的神经网络 它在人工神经网络的发展史上有着非常重要的地位 尽管它的能力非常有限
  • 错误ValueError: Buffer dtype mismatch, expected ‘float32_t‘ but got ‘double

    PCL库调用错误 cloud0 from array all pointcloud world File pcl pxi PointCloud PointXYZ 180 pxi line 160 in pcl pcl PointCloud
  • 一款强大的API接口文档管理工具(Smart-Doc + Torna)

    本文由龙飞同学供稿 在团队协作开发项目的时候 接口文档承担着向其他开发人员说明接口相关信息的重要任务 因此 一份清晰而又相近的接口文档至关重要 但是 写接口文档的痛苦想必各位开发人员都体验过 明明写接口的时候那么丝滑 写接口文档的时候像要老
  • linux 系统下执行R文件

    随着数据量的激增 在linux系统环境下执行数据分析模型显得很重要 本文来总结下在linux系统下执行R文件的步骤 step01 创建R脚本 例如 Rtest R step02 创建shell脚本 例如 runRtest sh 内容为 bi
  • 自由软件基金会公布了AGPL v3许可证

    自由软件基金会发布了一种新的开放源代码软件许可 新许可面向其代码被用作软件服务化 SaaS 应用的开发人员 新许可将确保对开放源代码SaaS应用代码的修改会反馈给自由软件社区 新许可名称为GNU Affero General Public
  • CCF-CSP-202109-4-收集卡牌

    原题链接 满分代码 include
  • eplan怎样创建和修改图框_EPLAN标题页及图框的设计

    标题页理解为特殊的表格 选择 工具 主数据 表格 打开 弹出 打开表格 对话框 文件类型 标题页 封页 f26 选择需要打开的表格 点击打开按钮 表格中的元素 1 文本 表示普通的 固定的文字 2 特殊文本 表达项目属性 页或表格属性的值
  • oracle 分表

    项目中操作日志因为数据量过大所以做分表操作 MYBATIES 创建表
  • .Net项目github接入sonarcloud

    代码质量方面的检测工具 在这之前从来没用过 就算前阵子听说了sonarcloud 也仅当知道记录了下 结果昨天被某些事情刺激了下 于是去查了下资料 然后就顺便在github上做了下测试 这里做个记录 sonarcloud的官网地址是http