■刊行の背景 高品質なアプリケーションを迅速に開発し、矢継ぎ早にリリースしなければならない昨今の開発現場では、CI/CD(継続的インテグレーション/継続的デリバリ)やアジャイルプロセス等がどんどん浸透しています。しかし、そうした短い周期の開発サイクルのなかで、開発ソースの品質を保ち続けるには、新しい仕組みが必要となります。その手段として注目されているのが、ソースコードの静的解析ツール「SonarQube」なのですが、従来、情報の多くは断片的で英語のままでした。 ■本書の目標 本書は本邦初のSonarQube入門書として、以下の3つの目標を順に目指していきます。 ■対象読者 次のような方々のために書きました。 本書を読むには、以下の前提知識が必要です。 ■本書の構成 本書は3部構成になっています。 本書を開発品質の向上、継続的インスペクションの実現に、是非とも役立ててください。 ■著者プロフィール 富永陽一(トミナガ ヨウイチ) 第1章~5章、8章、10章、前文ほかを執筆 鈴木啓太(すずき けいた) 第7章と11章を執筆 高市智章(たかいち ともあき) 第6章と9章を執筆 ■本書の主な内容 |
基礎編 |
1 ソースコードの品質とSonarQube |
1.1 SonarQubeとは? 1.2 動的テストによる品質確保 1.3 静的テストによる品質確保 1.4 SonarQubeによる品質改善 |
2 SnarQubeのセットアップ |
2.1 SnarQubeが利用するデータベース 2.2 SnarQubeのダウンロード 2.3 Windowsへのインストール 2.4 Linuxへのインストール 2.5 SnarQubeの初期設定 2.6 SnarCloudを利用する |
3 SnarQubeのアーキテクチャ |
3.1 SnarQubeの構造 3.2 連携可能な外部コンポーネント |
実例編 |
4 Javaのコードを分析する |
4.1 基本的な使い方 4.2 Sonar Scannerを使う 4.3 Eclipseで使う 4.4 プラグインを使う |
5 .NET Frameworkのコードを分析する |
5.1 基本的な使い方 5.2 Visual Studioで使う |
6 JavaScriptのコードを分析する |
6.1 Sonar JSのインストール 6.2 JavaScriptのプロジェクトを解析する 6.3 テストカバレッジを表示する 6.4 ESLintを活用する |
7 Pythonのコードを分析する |
7.1 SonarPythonのインストール 7.2 Pythonプロジェクトの解析 7.3 テストカバレッジの測定 7.4 ユニットテスト実行結果の連携 7.5 Pylintを使う 7.6 Visual Studio CodeとSonarLintを連携する コラム マイクロサービスとSorarQube |
実践編 |
8 SonarQubeサーバーの使い方 |
8.1 ダッシュボード 8.2 ISSUE 8.3 メトリック 8.4 Measures 8.5 Quality Profile 8.6 Quality Gate |
9 継続的インスペクションの運用 |
9.1 ソフトウェア品質における課題と解決 9.2 アジャイル開発における継続的インスペクション |
10 外部ツールと連携する |
10.1 GitやSubversionと連携させる 10.2 継続的インスペクション環境の構築(その1) 10.3 継続的インスペクション環境の構築(その2) |
11 SonarQubeの安定運用に向けて |
11.1 外部データベースを使う 11.2 バックアップの手順 11.3 アップグレードの手順 |