Shorarqubeによるコード静的解析
この記事では、コードの解析ツールを簡単に紹介します.
我々は、これらの質問に答えるためにしようとします:なぜsonarqube?インストール方法? この記事のスペイン語版:Link
Sonarqubeは、多くの同様のツールのように、我々は静的なコード解析を実行することができます、これは改善のためのポイントを検出するために私たちを案内します.
それは私たちが良いことをしていることを確認するのに役立ちます.
主な用途の中で、以下のような側面を識別する可能性を強調することができます. 重複コード デッドコード コーディング標準 不要なコメント ユニットテストと統合テストの欠如 ファイルサイズと方法 スパゲッティコード 脆弱性
品質ゲート:分析されたプロジェクトは、ステージを通過するに準拠しなければならないルール.
バグと脆弱性:実際のまたは潜在的な失敗に言及します.
コード臭い:それはあなたのコードの書き込みを支援する表示です.それはあなたがエラーを持っていることを意味しない、それは単なるエラーのリスクを減らすための提案です.
カバレッジ:それは私たちはどのくらいのコードがテストされ、テストによって検証を知ることができます.
それをインストールし、開発者の日にそれを統合する手順を見てみましょう.
Docker
1 )ターミナルからsonarqubeをインストールします. 次のコマンドを使用する
重要:後で使用する名前を覚えておいてください. 次の画像に示すように、2番目の方法はDockerアプリを使用しています
重要:後で使用するための名前を覚えて
3 ) localhost : 9000に入力して、すべてがうまく動作していることを確認します.次のイメージのようなセクションが表示されます.ユーザー名とパスワードは管理者です.
4 )プラグインをインストールし、フラッタの解析をサポートすることができます. セクションからダウンロードreleases ファイルの最後のバージョン.ジャー
ダウンロードしたファイルを端末でコピーし、Dockerコンテナに貼り付けるつもりです.
Dockerアプリケーションから、CLIを実行し、次の画像に示すようにDockerコンテナから「id Docker」を取り出します.
その後、コピーします.DockerコンテナへのJARファイル
ID Docker :前のステップで得たコンテナのID
名前:コンテナ名.変更を加えることなくチュートリアルに従うならば、それはsonarqubeです CLIコンソールをチェックしてください.正しいファイルのjarファイル Dockerコンテナを再起動する 5 )ダウンロードSonarScanner ダウンロード.あなたのOSのためのZIPファイルとあなたのOS 私のMacで. ツールと呼ばれるフォルダのダウンロードと解凍 次に、bash/zshの設定は次のようになります. 6 ) localhostに戻りましょう: 9000
7 )その後、プロジェクトを作成し、オプションを手動で選択します
8 )キーと名前を入力します.
9 )プロジェクトのトークンを入力する
10 ) Aを作成するconfiguration あなたのフラッタープロジェクトと呼ばれるファイル:SONARプロジェクト.プロパティ
11 )プロジェクトのルートでsonarqube consoleによって示されているOSのコマンドを実行する
Flutterがテストフォルダー内のファイルをインデックス化するときにエラーが発生した場合は、次のことができますsolution
Sonarqubeは、コードの品質を評価し、品質の飛躍を取る必要があるチームを持っているプロジェクトのための同盟国になることができます.それはあなたがチームが顧客の期待に追いつくことができるように“ルール”を作成することができます.それはまだフラッタのために非常に粗いです、そして、私は以下のライブラリのうちの1つが十分であるかもしれないと思います.
静的コード解析では、ほとんどの場合、これらのライブラリを使うのに十分であると思います.Lint , VeryGoodAnalysis , Pedantic
Sonarqubeを実行しインストールする手順は簡単です.私が成し遂げたかったことは、ちょうど始まっているより詳細なステップバイステップを必要とする人々のためにできるだけ詳細であることでした.
ここに来てくれてありがとう.
他の開発者がフラッタでアプリケーションを書くとき、彼らの生産性を改善し続けるのを助けるために、あなたはこの記事を共有することができます.
この記事のスペイン語版がありますhashnode . ご自由に.🇪🇸
今後のフラッタ記事でお会いしましょう!
https://docs.sonarqube.org/latest/setup/get-started-2-minutes/
https://hub.docker.com/_/sonarqube . https://docs.docker.com/engine/reference/commandline/cp/ https://stackoverflow.com/questions/29837369/cant-be-indexed-twice-testsourcedirectory-and-sourcedirectory-are-same/40150551#40150551 https://github.com/insideapp-oss/sonar-flutter
我々は、これらの質問に答えるためにしようとします:なぜsonarqube?インストール方法?
導入
Sonarqubeは、多くの同様のツールのように、我々は静的なコード解析を実行することができます、これは改善のためのポイントを検出するために私たちを案内します.
なぜsonarqubeを使用しますか?
それは私たちが良いことをしていることを確認するのに役立ちます.
主な用途の中で、以下のような側面を識別する可能性を強調することができます.
どのような情報sonarqubeを見ることができますか?
品質ゲート:分析されたプロジェクトは、ステージを通過するに準拠しなければならないルール.
バグと脆弱性:実際のまたは潜在的な失敗に言及します.
コード臭い:それはあなたのコードの書き込みを支援する表示です.それはあなたがエラーを持っていることを意味しない、それは単なるエラーのリスクを減らすための提案です.
カバレッジ:それは私たちはどのくらいのコードがテストされ、テストによって検証を知ることができます.
どのようにインストールし、それを使用するには?
それをインストールし、開発者の日にそれを統合する手順を見てみましょう.
必要条件:
セットアップと実行sonarqube
1 )ターミナルからsonarqubeをインストールします.
docker pull sonarqube
2 ) sonarqubeコンテナを実行するには、次の2つの方法があります. docker run -d --name sonarqube -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true -p 9000:9000 sonarqube:latest
あなたが特定のバージョンに最新の変更の代わりにもう一つのバージョンをダウンロードするならば.重要:後で使用する名前を覚えておいてください.
重要:後で使用するための名前を覚えて
4 )プラグインをインストールし、フラッタの解析をサポートすることができます.
Dockerアプリケーションから、CLIを実行し、次の画像に示すようにDockerコンテナから「id Docker」を取り出します.
docker cp file_path.jar id-docker:/opt/name/extensions/plugins
パス.JAR :ファイルをダウンロードするパス.ジャーID Docker :前のステップで得たコンテナのID
名前:コンテナ名.変更を加えることなくチュートリアルに従うならば、それはsonarqubeです
export PATH="$PATH":"$HOME/tools/sonar-scanner/bin"
7 )その後、プロジェクトを作成し、オプションを手動で選択します
8 )キーと名前を入力します.
9 )プロジェクトのトークンを入力する
10 ) Aを作成するconfiguration あなたのフラッタープロジェクトと呼ばれるファイル:SONARプロジェクト.プロパティ
# Project identification
sonar.projectKey=flutter_rocks
sonar.projectName=Flutter Rocks
sonar.projectVersion=1.0
# Source code location.
# Path is relative to the sonar-project.properties file. Defaults to .
# Use commas to specify more than one folder.
sonar.sources=lib
sonar.tests=test
# Encoding of the source code. Default is default system encoding.
sonar.sourceEncoding=UTF-8
# Allows reuse of an existing analyzer report
# sonar.dart.analysis.reportPath=
# Analyzer mode
# Can be:
# - flutter (flutter analyze) - default
# - dart (dart analyze)
# - legacy (dartanalyzer)
# sonar.flutter.analyzer.mode=
独自のリンターアナライザを使用する場合は、次のようにします. sonar.dart.analysis.useExistingOptions=true
解析オプション.YAMLファイルは既にプロジェクトルートの下に存在します11 )プロジェクトのルートでsonarqube consoleによって示されているOSのコマンドを実行する
sonar-scanner \
-Dsonar.projectKey=NAME \
-Dsonar.sources=. \
-Dsonar.host.url=http://localhost:9000 \
-Dsonar.login=AuthenticationToken -X;
12 )結果:すべての出力を見るためにダッシュボードをリロードすることができますFlutterがテストフォルダー内のファイルをインデックス化するときにエラーが発生した場合は、次のことができますsolution
sonar.test.inclusions=**/*test*/**
sonar.exclusions=**/*test*/**
ビルド2ランナークラスを除外する場合は、前のソリューションを使用できます.sonar.exclusions=**/*.g.dart,**/*.gr.dart,**/*.freezed.dart
結論
Sonarqubeは、コードの品質を評価し、品質の飛躍を取る必要があるチームを持っているプロジェクトのための同盟国になることができます.それはあなたがチームが顧客の期待に追いつくことができるように“ルール”を作成することができます.それはまだフラッタのために非常に粗いです、そして、私は以下のライブラリのうちの1つが十分であるかもしれないと思います.
静的コード解析では、ほとんどの場合、これらのライブラリを使うのに十分であると思います.Lint , VeryGoodAnalysis , Pedantic
Sonarqubeを実行しインストールする手順は簡単です.私が成し遂げたかったことは、ちょうど始まっているより詳細なステップバイステップを必要とする人々のためにできるだけ詳細であることでした.
ここに来てくれてありがとう.
他の開発者がフラッタでアプリケーションを書くとき、彼らの生産性を改善し続けるのを助けるために、あなたはこの記事を共有することができます.
この記事のスペイン語版がありますhashnode . ご自由に.🇪🇸
今後のフラッタ記事でお会いしましょう!
参考文献
https://hub.docker.com/_/sonarqube .
Reference
この問題について(Shorarqubeによるコード静的解析), 我々は、より多くの情報をここで見つけました https://dev.to/jamescardona11/flutter-code-static-analysis-with-sonarqube-3b39テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol