ジェンキンスのためのロードビュープラグイン

Jenkins ビルドに LoadView テストを追加する

 

パフォーマンスの問題を早期に発見し、LoadViewパフォーマンステストをCI開発プロセスに統合することで、より信頼性の高いアプリケーションを本番環境にリリースします。 包括的なテスト レポートを作成し、コードのパフォーマンスに関する洞察を得ます。

ジェンキンス:オープンソースのオートメーションと継続的インテグレーション

 

ジェンキンスのためのLoadViewプラグインの詳細に飛び込む前に、ジェンキンスとそれが重要である理由について説明します。

Jenkins は Java 仮想マシン (JVM) 上に構築されたオープン ソースのオートメーションサーバーであり、ソフトウェア プロジェクトの開発、デプロイ、自動化のために何千ものプラグインをサポートしています。 これらは、オープンソースのオートメーションサーバー空間のリーダーです。 オープンソースのオートメーションサーバーを提供する他の企業は、チームシティ、サークルCI、ハドソン、トラヴィスCI、アトラシアンバンブー、他の多くの中でです。

シフト左テストや継続的インテグレーションなどの最新のソフトウェア配信プラクティスの一環として、開発者、テスター、デザイナーは、すべてジェンキンスを使用してテストの構築、展開、自動化を行います。 技術の進歩とデジタルエクスペリエンスに焦点を当てて開発サイクルとテストサイクルが短くなり、頻繁になるにつれて、質の高いソフトウェア機能をリリースするためには、チーム全体を一貫して、より機敏にする必要があることが明らかになりました。 これは、テストが左に「シフト」し、通常は最初のコードが書かれた後に起こったことを意味しました。 この「早期かつ頻繁なテスト」マントラは、継続的インテグレーションと継続的デリバリー(CI /CD)において特に重要であり、一貫して継続的に変更をリリースすることが目標です。

DevOps のシフト左テストとロード テストのベスト プラクティスの詳細

継続的インテグレーションは、基本的に、自分のマシンからテストを行い、新しいコードが共有ソースリポジトリにプッシュされるたびに自動的にテストする必要があります。 継続的インテグレーションの利点は、すべての開発作業とコードをプロセスに早く統合できるため、バグやエラーをより迅速かつ効果的に特定して修正できることです。 ソフトウェアエラーを迅速に見つけて修正できるほど、本番環境で修正する必要がなくなります。

継続的な統合をさらに拡張するため、チームは継続的な配信方法を使用して、ソフトウェア テスト プロセスの自動化に加えてソフトウェア リリース サイクルを自動化および制御します。 さらに、チームは継続的な展開を採用できるため、実質的にほとんど人間の関与の必要性がなくなります。 ソフトウェア開発段階を通過するすべての変更は、自動的に本番環境にリリースされます。

CI/CDとは何ですか?

継続的インテグレーション (CI) と継続的デリバリー (CD) は、アプリケーション開発チームがコード変更をより頻繁かつ確実に提供できるようにする、カルチャ、一連の動作原理、およびプラクティスの集合を示します。 これは CI/CD パイプラインと呼ばれます。 CI/CD は DevOps チームが採用するベスト プラクティスの 1 つです。 また、ソフトウェア開発チームは、展開手順が自動化されるに従って、ビジネスの前提条件、コード品質、およびセキュリティの条件を満たすことに集中できるため、 アジャイルな方法論のベスト プラクティスでもあります。

 

CI と CD の違い

この2つの用語のコンフレーションがどのように始まったのかは不明です。 それは、それが可能であるように、それは十分に簡単にクリアします。

 

継続的インテグレーション

継続的インテグレーションは、コードをメインラインコードベースに調整するための方法です。 今日の実質的に全ての状況において、理由のために明示的に構成されたステージを利用して継続的インテグレーションが終了しています。 継続的インテグレーションの実行は、このようにして、正しいツールを利用する必要がある。

 

継続的デリバリー

一方、継続的な配信は、基本的にソフトウェアテストサイクル全体を自動化し、可能な限り多くの手作業を削除しようとすることに取り組んでいます。

 

CI/CDのメリット
  • コードの変更が小さくなるほど複雑(核が増す)、意図しない結果が少なくなる
  • 欠乏切断は複雑で速い
  • 目標の中間、平均修復時間(MTTR)は、コードの変更が小さく、短い
  • テストの可能性は、より小さい明示的な変更により向上します。 これらの小さな変化は、ますます正確な正と負のテストを可能にします
  • 識別し、アドレス作成のエスケープに時間を経過すると、放電の速いペースで、より短いです
  • 非基本的な変形の蓄積は、他のコンポーネントの問題が出現する前に、より低く、頻繁に修正されます
  • 再設計は、進行の小さな単位を提示し、より少ない面倒です

 

CI/CD の用途と実装

CI/CD は、アプリケーション設計者がコードの変更を、コンピュータ化を使用してクライアントに伝達する多くの戦略です。

略語 CI/CD は、一般的に一緒に利用される 2 つの別々のアイデアを暗示しています: 絶え間ないミックスと一貫した搬送。 絶え間ない調整は、エンジニアがアプリケーション コードの変更を作成、テスト、および結合するために使用する機械化手順を表します。 永続的な搬送は、絶え間ないミックスから試行されたコードが、手動トリガによって異なる状況で自然に送信される後続の段階です。 継続的な配信は、同様に、さらなるコンピュータ化を提示し、絶え間ない配置を表すことができます。 ノンストップ搬送では、エンジニアは、物理的に自分の作成状態に変更をプッシュする必要があります。 ノンストップ組織を利用することで、設計者はアプリケーションの変更を結果的に任意の条件に送信できます。 この会話のために、私たちは絶え間ないミックスと一貫した伝達のアイデアに集中します。

 

CI/CD の動作

ユーザーの改善の最先端、容赦ない宇宙は、さまざまなエンジニアが単一のアプリケーションの間にショットを取ることを要求します。 設計者は、標準のライフサイクルで変更をテストする準備ができたら、コードの変更を事前に設定された「結合日」に統合します。 ブレンド手順は、面倒で時間がかかる場合があります。 設計者の変更が別のエンジニアの変更に影響を与える場合、グループがロールバックしたり、バグ修正で何時間も経ったりすると、はるかに複雑になります。

 

継続的統合フェーズ

CI/CD プロセスに変更することで、設計者はコードを可能な限り頻繁に組み合わせてテストできます。 ノンストップ参加ステージは、次の基本的な手順に従います。

  • デザイナーは集合アーカイブからコードを取り出してコードを取り除き、おそらく別の要素に別のブランチを作ります。
  • 新しい要素が完了すると、エンジニアは一般的な Vault に押し戻します。
  • CI エンジニアは、変更が加えられたことを確認し、アプリケーションの作成とテストを開始し、アプリケーションの中断が行われていないことを保証します。 テストは、アプリケーションの一部が損なわれていないことを保証するために、すべての有用性を中心にしています。
  • 進歩グループは、テスト結果を通知されます。 失望の場合、グループは新しいコードが失望を引き起こし、問題を隔離して修正し始めることができることに気付くでしょう。 進行が活発な場合、グループは絶え間ない搬送段階に進みます。

 

継続的デリバリーフェーズ

集中テストが完了すると、グループはノンストップ搬送ステージに進むことができます。 エンジニアは、コードの伝達を物理的にアクティブにする必要があります。 ただし、残りの手順は完全にプログラムされています。 ウェブ ワーカー、データベース、およびさまざまな管理との基本的なコミュニケーションはすべて、コンテンツの呼び出しで終了します。

 

エッジでの CI/CD

CI/CD プログラミング パイプラインは、高い確率の条件で送信するときに特に便利です。 エッジでは、物理的なアクセスが存在しないため、問題を中程度にするのが難しい時間があります。 一貫した組み込みと絶え間ない搬送を利用することで、アプリケーションに対する少しずつ変化をサポートすることで危険を軽減します。 その後、問題は、作成条件を損なう前に、迅速に認識され、緩和することができます。

CI/CD ツールの例

 

ジェンキンス

Jenkins は、フォーカル フォームと永続的な調整プロセスが行われるオープンソースのオートメーション ツールです。 プログラムは、WindowsとMacOSのためのバンドルを持つJavaベースの自己含有プログラムです。

 

ジェンキンスの主なハイライト
  • オープンソース
  • シンプルな確立と異なる作業フレームワークへの移行
  • インターフェイスを利用する上で不可欠かつ簡単
  • 膨大なネットワークベースのモジュール資産で拡張可能
  • シンプルで簡単なセットアップ
  • フレーズに依存する計画を組み立てる
  • 事前に作成された手順で Windows シェルと注文の実行をサポートします。
  • 状態の製造通知をサポート

 

サークルシ

CircleCIは、イベントの速いターンと製品の到着を強化するCI / CDデバイスです。 CircleCIは、コード構築からテストと送信まで、クライアントのパイプラインを介して機械化を強化します。

 

サークルCIキーハイライト
  • ビットバケット、GitHub、クラウドエンタープライズに適合
  • コンパートメントまたは仮想マシンを使用して製造
  • 明確な調査
  • 並列ビルドステップの自動化
  • クイックテスト
  • 組織はノンストップで、ブランチが明示的である
  • 非常にカスタマイズ可能
  • 組み合わせとカスタムパーセル転送オーダーの自動化
  • 迅速な配置と無限の開発

 

竹のキーハイライト
  • 最大 100 個のリモート ビルド エージェントをサポート
  • 類似したテストの塊を実行し、迅速な入力を取得
  • AWS、ドッカー、アマゾンと統合
  • 写真を作成し、レコードにプッシュします。
  • 環境ごとのアクセス許可
  • Git、Mercurial、SVN レポスの新しいブランチを区別し、その結果、それらにメインライン CI プランを適用します。

 

チームシティ

TeamCity は、ジェットブレインの Java ベースのビルド管理と CI サーバーです。TeamCity では、さまざまな種類のプロジェクトのビルドと配置をサポートしています。Windows および Linux サーバーにインストールでき、.NET などのテクノロジをサポートしています。さらに、このツールは、ドッカー、ジラ、メイブン、Azure、Amazon EC2、Google クラウドなどの他のツールと統合できます。

 

チームシティキーハイトライト
  • 親ベンチャーの設定と配置を再利用するサブプロジェクトにいくつかの異なる方法を提供します
  • 同じ時間を異なる条件でチップを実行します。
  • 履歴の作成、テスト履歴レポートの表示、ピン、タグの表示、上位の選択肢の追加を許可します。
  • 変更、共同作業、およびワーカーの拡張が簡単
  • CIサーバーを安定させ、実用的に保つ
  • 適応可能なクライアントボード、クライアントジョブのタスク、クライアントの収集

LoadView: クラウドからの実際のブラウザベースのロードとストレステスト

LoadView プラットフォームは、プロトコル ベースのテストから実際のブラウザー ベースのテストまで、あらゆるものをシミュレートする、効果のない負荷パターンの問題に対処する柔軟な負荷およびストレス テスト プラットフォームです。

パフォーマンス テストでは通常、一部の組織ではサポートできない追加のインフラストラクチャとリソースが必要です。 LoadView はプラットフォームを通じてこれを管理します。 プラットフォームは完全にクラウドベースであるため、内部ロード インジェクタのセットアップや展開、サードパーティのクラウド アカウントの管理、ハードウェアやソフトウェアの要件の心配は必要ありません。

 

ロードビュー機能

負荷ストレスパフォーマンステスト

  • プロトコルレベルおよび実際のブラウザベースのテスト
  • 40以上のデスクトップ/モバイルブラウザとデバイスで高度なスクリプト
  • 荷重曲線オプション – 荷重ステップ、ゴールベース、動的調整可能曲線
  • 約30のグローバルな場所からテスト
  • 数十から数千の仮想ユーザーに拡張
  • ユーザーが認識する応答時間を測定する
  • 運用環境で監視するロード テスト スクリプトを再利用する

これらの機能は、パフォーマンステストのプロセスをユーザーの手に委ね、ガトリングやJMeterのような現在市場で他の負荷テストソリューションとは別にLoadViewを設定します。 ガトリングやJMeterのようなオープンソースツールは、LoadViewプラットフォームと比較して同じ機能と機能を持っていません。 LoadView のすべての機能の詳細を読む.

 

ジェンキンス: コードの構築、テスト、およびデプロイ

 

この記事の前にジェンキンスについて触れましたが、言い換えて言えば、JenkinsはJavaで書かれたオープンソースのオートメーションプラットフォームであり、継続的な統合を目的として設計されたモジュールを備えています。 Jenkins は、製品開発の構築とテストを行うため、エンジニアがプロジェクトに変更を組み込むのが簡単になります。 同様に、無数のテストや組織の革新と連携することで、製品を絶え間なく伝えられるようにします。

Jenkins を使用すると、関連付けにより、自動化コンソールを通じて製品の進歩プロセスを迅速化できます。 Jenkins は、製造、レポート、テスト、バンドル、ステージ、送信、静的検査など、さまざまな種類の改善ライフサイクル手順を調整します。 モジュールは、さまざまな DevOps ステージの組み合わせを許可します。 特定のデバイスを調整する必要がある場合は、その機器のモジュールを導入する必要があります。

 

ジェンキンスが使用されるとき

Jenkins コンソールはさまざまな方法で使用できますが、Dev と QA が並んで動作しているため、アジャイルでは非常にサポートされています。 たとえば、開発者がバージョン管理システム (Git、Bitbucket など) に新しいコードをプッシュすると、QA 環境内にビルドをデプロイするジョブがトリガーされます。 展開が成功すると、自動テスト スイートがトリガーされ、結果のレポートが Jenkins によって送信されます。 Jenkins は非常に柔軟性があり、サードパーティの統合をサポートするために多くのプラグインを提供し、設定/設定も非常に簡単です。

 

ジェンキンスが使用される理由

継続的インテグレーションと継続的なデプロイの概念は、最新の DevOps 環境のバックボーンとなっています。 アプリケーションのビルド、テスト、および展開を自動化することで、開発および運用チームの中間にギャップを埋めるだけでなく、プロセスの効率も大幅に向上しています。 継続的な開発、継続的なテスト、継続的な統合、継続的な展開、継続的な監視の傾向では、プロジェクト開発のすべてのプロセス、Jenkinsのようなツールは、すべての課題を満たす完全なパッケージです。 開発ライフサイクルが短くなるだけでなく、すべての企業が望む顧客満足度も向上します。

 

ジェンキンスパイプライン

ジェンキンスツールのもう一つの主要な部分は、ジェンキンスパイプラインです。 Jenkins パイプラインには、開発者によるコミット後にビルドで実行されているさまざまなジョブの概要が表示されます。 これは、Jenkins が現在実行しているタスクを通知します。 ビルド パイプラインでは、ビルドは、単体テスト、受け入れテスト、パッケージ化、レポート、展開などのセクションに分割されています。 これらのフェーズは、一連の、または並列で実行できます。 1 つのフェーズが成功すると、自動的に次のフェーズに進み、その名前が 「パイプライン」と呼ばれます。

さまざまな変更が一度に異なる開発者によってコミットされているため、ビルドの失敗によって、現在どの変更がテストされているか、どの変更が行われているかを知っておくと役に立ちます。 ビルドがユニットテストと統合テストに合格すると、テスト自動化サービスのエンジニアは Jenkins を使用して、ジョブが終了すると自動化スイートと電子メールレポートをトリガーします。

Jenkins コンソールには、プロセス全体を自動化するためにさまざまなインターフェイスとツールが用意されています。 Jenkins は、ソフトウェア プロジェクトを継続的にビルドおよびテストするために使用されるため、開発者はプロジェクトに変更を統合しやすくし、ユーザーが新しいビルドを取得するのを容易にします。 また、多数のテストおよび展開テクノロジと統合することで、ソフトウェアを継続的に提供することを許可します。

ジェンキンスの要件のロードビュープラグイン

 

LoadView プラグインを使用して Jenkins を使用して、パフォーマンス テスト チームは、実際のブラウザー ベースのロード テストを Jenkins テスト ビルドに簡単に組み込むことができます。 これにより、アプリケーションが長期間にわたって継続的にテストおよび評価されます。 これにより、コードやアプリケーションを運用環境にプッシュする前に、チームはエラーやボトルネックを特定して対処できます。

ロード テストの主な目的は、システムが故障または停止する前にどの程度のワークロードを取ることができるかを定義する、かなり明白ですが、プロセスは、それだけはるかに複雑になる可能性があります。 LoadView のようなソリューションは、時間のかかるプロセスを使用していたものを簡素化します。 システムを大量の負荷(仮想ユーザー)にさらすと、追加の損傷が発生する前に、問題の原因に関する詳細な詳細をシステムの弱点を明らかにすることができます。 負荷テストは、問題の特定に役立つだけでなく、ウォーターフォールチャート、テスト結果、比較テストのベンチマークを通じてパフォーマンスの結果を提供します。 これは、問題がいつ、なぜ発生したのか、何が起こったのかを明らかにします。

 

*ジェンキンスのLoadViewプラグインを使用する前に、まずアクティブなジェンキンスとLoadViewアカウントを持って、 ストレステストシナリオを設定する必要があります。

30日間のロードビューを試してみてください!

クレジットカードなし、契約なし。

ジェンキンス統合のための一意の識別子を作成する

 

Jenkins との統合を設定するには、まず LoadView セキュリティ トークンとして使用する一意識別子 (UID) を作成する必要があります。 UID を作成するには、次の簡単な手順に従います。

ジェンキンス統合 UID のロードビュープラグイン

 

1. LoadView アカウントにログインする

2. [アカウント]メニューから、[ 統合]

3. [統合の追加]を選択します。

4. ストレス テスト ウェブ APIを選択します。 UID が自動的に作成されます。

5. ジェンキンスで使用する統合 UID をコピーします。

 

 

 

統合タイプに関する一般的な注記として、必要な数だけ統合タイプを作成できます。 各統合には、セットアップ時に必要となる一意識別子 (UID) があります。 統合と UID を作成するには、上の [統合の追加] ボタンを選択し、[統合の種類] を選択します。 セキュリティで保護された UID が自動的に作成されます。

ジェンキンスでのロードビュープラグインのインストール

 

1. Jenkins アカウントにログインする

  • [資格情報] メニューから [資格情報の追加] を選択します。
  • ロードビュー セキュリティ トークン (UID) を選択します。

 

 

ジェンキンスのロードビュープラグインの資格情報の追加2. 資格情報の構成と検証

  • 種類. 読み込み表示セキュリティ トークン (UID)。
  • スコープ: [ グローバル ] を選択します。
  • ID. デフォルトのままにするか、一意の ID を指定します。
  • 説明: 資格情報を区別するための一意の説明を指定します。
  • UID. ロードビューのアカウントから読み込みビュー UID を貼り付けます。 UID が追加されたら、[UID の検証] をクリックして、Jenkins が LoadView API にアクセスできることを確認します。

 

 

3. ジョブを選択し、[構成] をクリックします。

  • > ビルド後アクションのビルドに移動 > ビルド後アクション > LoadView-Run ロード テスト シナリオの追加
  • Jenkins ビルドの LoadView ストレス テスト設定を指定する

Jenkins ビルド後アクションの LoadView プラグイン

  • 資格情報: 説明を使用して API キーを選択します。
  • シナリオ ID. ビルドで使用するストレス テスト シナリオ ID を貼り付けます。 LoadView のシナリオ ページから ID をコピーします。
  • エラーしきい値: テスト中に発生したエラーのあるセッションの許容パーセンテージを指定します (例えば、ターゲット・リソースへのアクセスに失敗した、キーワード/イメージが見つからないなど)。 エラー セッションの割合が指定した値を超える場合、ビルドは Jenkins で失敗としてマークされます。
  • 平均時間: テスト実行中に測定される平均応答時間の制限を指定します。 制限に達すると、ビルドは Jenkins で失敗としてマークされます。

4. ビルドアクションを保存する

ロードビューテスト結果

 

テストが実行されている場合、実行ステータスが Jenkins コンソール出力にリアルタイム モードで表示されます。

ジェンキンスのためのロードビュープラグイン

テストが完了すると、Jenkins ビルド メニューの LoadView 結果で結果が見つかります。

  • テスト期間
  • 仮想ユーザーの最大数
  • セッションの合計数
  • 成功したセッション
  • 失敗したセッション
  • 未完了のセッション

 

 

詳細 選択して 、より包括的な LoadView パフォーマンス レポートを確認します。

フレキシブル。 スケーラブル。 強い。

1つの便利なロードテストプラットフォームからすべて。