0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

自動コードレビューツールSonarCloudを導入してみて

Posted at

はじめに

ここ半年間ぐらい、SonarCloudとGitHubを連携してPullRequestのレビューを一部自動化しているのですが、
その使用感について振り返ってみたいと思います

SonarCloudって何

一部無料で使える、自動コードレビューのためのSaaSです。
GitHubと連携すると、PullRequestをバグ・脆弱性・コードスメル・コード重複などの視点で自動レビューし、問題があればステータスに反映してくれます。チェックの結果は下の図のようなイメージでPullRequestに表示されます。
色々なプログラミング言語に対応しているのですが、うちではPythonとTypeScriptのプロジェクトに対して適用しています。

image.png

(画像引用: SonarCloud公式の機能説明ページ)

使ってみて

実際に使ってみると、たまに人でのレビューが行き届かないバグを見つけてくれることもあり、コードの品質を維持する目的ではとても役に立っていると思います。
VSCodeのプラグインなども提供してくれているため、PullRequestに出す手前の段階でも事前に一部の問題に気づくこともできるような工夫があってありがたいです。

悩ましいところとしては、PullRequestに表示されるのはあくまでもバグの個数などで、指摘内容の詳細についてはSonarCloudのWebページに遷移して確認する必要があり、そのときにログインが必要になるのですが、そこで1ステップ挟まってしまうのでどうしても確認のための心理的ハードルが高くなってしまうということがあります。
また、自動チェックだと避けられない部分もあるとは思うのですが、うちの場合テストコードなどを書くときにどうしてもコード重複が発生することがあり、それが原因でチェックが通らないことも多々あります。そういうときは、SonarCloudを無視してマージせざるを得なくなるのですが、その辺り、適切に運用するためには、開発スタイルにあったチェックのルールをメンテナンスする必要は出てくるかと思います。(その辺り、ルールをカスタマイズできるようにはなっています)

まとめ

短くなってしまいましたが、備忘的にSonarCloudの使用感について振り返ってみました。
まだまだ、これから成長しているSaaSだと思うので、これからさらに進化することを期待しつつ使っていきたいと思います。
GitHub copilotとかもそうですが、どんどんコードの解析が賢くなっていて、いつかコードを書かなくても良い日が来るのではないかと期待してしまいますね。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?