smart-doc
は自動的に生成するツールです Markdown
、 HTML5
、 OpenAPI 3.0
、 など。smart-doc の設計目標は、ドキュメント作成プロセスを簡素化し、開発効率を向上させ、ドキュメントの正確性と適時性を確保することです。
ソフトウェア開発ライフサイクルにおいて、APIドキュメントの自動生成とインターフェースのパフォーマンステストは、開発効率の向上と製品品質の確保に重要なステップです。JMeterを生成する機能の追加により、 smart-doc
バージョン 3.0.1
開発者はこれら 2 つのタスクをより便利に実行できます。
この記事では、効果的なパフォーマンス テストのために smart-doc と JMeter を使用する方法を紹介します。
JMeterを生成する スクリプトts
使用 smart-doc
引き起こす smart-doc
複雑な構成やデバッグを必要とせずに JMeter で直接実行できるため、パフォーマンス テストがはるかに簡単かつ高速になります。
まず、 smart-doc-maven-plugin
プロジェクトに追加されました。次に、スマートドキュメントプラグインの関連パラメータを設定します。 pom.xml
プロジェクトのファイル。例:
com.ly.smart-doc
smart-doc-maven-plugin
(latest version)
./src/main/resources/smart-doc.json
${project.description}
コマンドを実行する mvn -Dfile.encoding=UTF-8 smart-doc:jmeter
Smart-doc はプロジェクトのソース コードをスキャンし、注釈情報を抽出して、対応する JMeter パフォーマンス テスト スクリプトを自動的に生成します。
使い方がよくわからない方は公式の
JMeter へのインポート
JMeterを開き、「ファイル「->」開ける「最初のステップで生成されたJMeterスクリプトファイルを選択し、「始める「」ボタンをクリックします。その後、JMeter はスクリプトに従ってパフォーマンス テストの実行を開始します。
Prometheus を設定する
ステップ1: JMeter Prometheusプラグインをインストールする
まず、Prometheusプラグインを lib/ext
JMeterのディレクトリにあります。プラグインはJMeterプラグインマネージャまたは
- 注記: JMeterのデフォルトのリスニングIPアドレスは
127.0.0.1
デフォルトでは、PrometheusがJMeter Prometheusリスニングポートに接続できないようにする。そのため、prometheus.ip=0.0.0.0
でjmeter.properties
。
ステップ2: Prometheusリスナーを追加する
JMeterを開き、Prometheusリスナーをテスト計画に追加します。これは、 テスト計画-> 追加 -> リスナー -> プロメテウスリスナー。
リスナーの設定は公式の設定を参考にしてください。以下を参照してください(smart-doc 3.0.4
Prometheus リスナー生成の設定と追加をサポートします):
ステップ3: Prometheus Scrapeを構成する
Prometheusの設定ファイル(prometheus.yml
)、新しい scrape_config
JMeter Prometheus プラグインからデータを取得します。例:
scrape_configs:
- job_name: 'jmeter'
scrape_interval: 15s
static_configs:
- targets: (':9270')
ここ、
JMeterテストを実行しているマシンのIPアドレスであり、 9270
JMeter Prometheus プラグインのデフォルトのリスニング ポートです。
ステップ4: テストプランを実行する
この記事では検証を容易にするため、スレッドグループは「無限ループ「ストレステスト中に、実際のニーズに応じて調整できます。」
正常に起動すると、JMeter Prometheusはデフォルトでローカルポートにサービスを作成します。 9270
。
URLにアクセスする
ステップ5: Prometheusを起動する
開始後 Prometheus
すると、JMeter Prometheusプラグインからデータの取得が開始されます。次の設定に示すように、正常に起動すると、設定されたターゲットが次のように表示されます。 Prometheus
。
ステップ6: Grafanaを構成する
上の Grafana
公式サイトで、公式サイトが提供するprometheus-jmeterモニタリングパネルを見つけます。ここでは、IDのテンプレートを選択します。 14927
Grafana にインポートします。
クリック後 負荷、 を選択 Prometheus
情報元。
- 注記: テスト中に、元のテンプレートが
14927
いくつかのエラーがありました。これらはこの記事の執筆中に修正されました。GitHub 。
テンプレートが正常にインポートされると、パフォーマンステスト監視データ全体が Grafana
。
パフォーマンステストプロセス全体を迅速に体験できるようにするために、 smart-doc
コミュニティがキュレーションし、単一のコマンドで起動できるテンプレートを提供しました。 docker-compose
体験したい方は Kubernetes
導入時には、AIツールを活用して、 docker-compose
テンプレートを Kubernetes
デプロイメント テンプレート。
体験用プロジェクトには使用方法の説明も含まれています。
この記事のサンプルコードは以下にあります。
JMeter パフォーマンス テストにおける Smart-Doc の支援
の組み合わせ smart-doc
パフォーマンス ストレス テスト用の JMeter には、次のようないくつかの利点があります。
- オートメーション:
smart-doc
ソースコードから API 情報を自動的に抽出し、手動で記述することなく JMeter パフォーマンス テスト スクリプトを生成できるため、効率が大幅に向上します。
- 精度: JMeterパフォーマンステストスクリプトは、
smart-doc
ソース コード内の API 定義と完全に一致しているため、手動でスクリプトを記述するときに発生する可能性のあるエラーを回避できます。
- 柔軟性:
smart-doc
さまざまな構成オプションをサポートしており、生成された JMeter スクリプトをテスト要件に応じてカスタマイズできます。
smart-doc
JMeterのサポートも引き続き改善し、最適化していきます。
結論
組み合わせることで smart-doc
および JMeter を使用すると、API ドキュメントの生成を自動化できるだけでなく、パフォーマンス テスト スクリプトを迅速に作成し、ストレス テストを実施することもできます。この自動化ツールは、開発とテストの効率を大幅に向上させるとともに、チームがソフトウェア システムのパフォーマンスをより簡単に維持および最適化できるようにします。
この記事が、日々の業務でこれらのツールをより効率的に適用するための実用的な参考資料となったことを願っています。
また、皆様には今後も smart-doc オープンソース コミュニティをフォローしてサポートしていただくようお願いいたします。今後は、より多くの開発者を支援するために、追加の言語のサポートを検討しています。