GitLab を API テストとシミュレーションに使用する方法
はじめに:
ソフトウェア開発のプロセスでは、API (Application Programming Interface、アプリケーション プログラミング インターフェイス) のテストが行われます。また、シミュレーションは非常に重要なステップであり、開発者が API の正確さとパフォーマンスを検証し、潜在的な問題を事前に検出するのに役立ちます。 GitLab は、バージョン管理やチーム コラボレーションなどの機能を実装する、非常に人気のあるコード ホスティング プラットフォームです。この記事では、API テストとシミュレーションに GitLab を使用する方法を紹介し、具体的なコード例を示します。
1. テスト ウェアハウスの作成
GitLab で新しいテスト ウェアハウスを作成し、API テストに関連するコードと構成ファイルを保存します。新しいウェアハウスを作成するには、GitLab インターフェイスの [新しいプロジェクト] ボタンをクリックするか、コマンド ライン ツールで次のコマンドを実行します。
$ git clone http://gitlab.example.com/your-username/your-project.git $ cd your-project $ touch README.md $ git add README.md $ git commit -m "initial commit" $ git push -u origin master
上記のコマンドにより、リモート ウェアハウスのクローンが作成され、README が作成されます。 .md ファイルをローカルに保存し、リモート ウェアハウスにプッシュします。次に、これに基づいてディレクトリとファイルを作成し、API テストに関連するコードと構成ファイルを保存できます。
2. 必要な依存関係をインストールする
API テストとシミュレーションを実行する前に、必要な依存関係をいくつかインストールする必要があります。リポジトリのルート ディレクトリに「requirements.txt」という名前のファイルを作成し、次の内容をファイルに追加します。
python-gitlab flask pytest
次に、次のコマンドを実行してこれらの依存関係をインストールします。
$ pip install -r requirements.txt
3 . API テスト コードを記述する
ウェアハウスに「api_test.py」という名前の Python ファイルを作成し、その中に API テスト コードを記述します。以下は簡単な例です:
from flask import Flask from flask import jsonify app = Flask(__name__) @app.route('/api/hello') def hello(): return jsonify(message='Hello, world!') if __name__ == '__main__': app.run()
上記のコードでは、Flask フレームワークを使用して単純な API を作成し、ルート "/api/hello" を定義します。ルートがリクエストされると、JSON での応答が返されます。フォーマット。実際のニーズに応じて、より複雑な API テスト コードを作成できます。
4. API シミュレーション コードを記述する
ウェアハウスに「api_mock.py」という名前の Python ファイルを作成し、その中に API シミュレーション コードを記述します。以下は簡単な例です:
from flask import Flask from flask import jsonify app = Flask(__name__) @app.route('/api/hello') def hello(): return jsonify(message='Mock Hello!') if __name__ == '__main__': app.run()
上記のコードでは、Flask フレームワークを使用して単純な API モックを作成し、前の API と同じルート "/api/hello" を定義しました。返される応答は「Mock Hello!」です。実際のニーズに応じて、より複雑な API シミュレーション コードを作成できます。
5. テスト スクリプトを作成する
ウェアハウスに「test_api.py」という名前の Python ファイルを作成し、その中に API テスト スクリプトを作成します。以下は簡単な例です:
import pytest import requests def test_api_hello(): response = requests.get('http://localhost:5000/api/hello') assert response.status_code == 200 assert response.json()['message'] == 'Hello, world!' if __name__ == '__main__': pytest.main()
上記のコードでは、pytest ライブラリを使用して簡単な API テスト スクリプトを作成し、前のコードに Make a GET リクエストを送信する「test_api_hello」という名前のテスト ケースを定義しました。 API を使用して、返された応答ステータス コードとメッセージの内容が期待どおりであるかどうかを確認します。実際のニーズに応じて、さらに多くのテスト ケースを作成できます。
6. シミュレーション スクリプトを記述する
ウェアハウスに「mock_api.py」という名前の Python ファイルを作成し、その中に API シミュレーション スクリプトを記述します。以下は簡単な例です:
import os from subprocess import Popen, PIPE def start_mock_api(): process = Popen(['python', 'api_mock.py'], cwd=os.getcwd()) return process def stop_mock_api(process): process.terminate() process.wait() if __name__ == '__main__': mock_api_process = start_mock_api() input('Press any key to stop the mock API...') stop_mock_api(mock_api_process)
上記のコードでは、サブプロセス ライブラリを使用して新しいプロセスを開いて API シミュレーションを開始し、ユーザーがプロセスを停止するキーを入力するまでコンソールで待機します。シミュレーション。実際のニーズに応じて、より複雑なシミュレーション スクリプトを作成できます。
7. コードを GitLab に送信する
API テストとシミュレーション コードの作成が完了したら、コードを GitLab ウェアハウスに送信できます。次のコマンドを実行してコードをリモート ウェアハウスに送信します。
$ git add . $ git commit -m "add API test and mock code" $ git push
8. GitLab での CI/CD 構成
自動化された API テストとシミュレーションを実現するために、CI/CD (継続的) を構成できます。 GitLab 統合/継続的デプロイメントで)。ウェアハウスに「.gitlab-ci.yml」という名前のファイルを作成し、次のコンテンツをその中に追加します。
stages: - test - mock api_test: stage: test script: - pip install -r requirements.txt - pytest api_mock: stage: mock script: - pip install -r requirements.txt - python mock_api.py
上記の構成では、最初に 2 つのステージを定義しました。「test 」は API テストに使用され、「test 」は API テストに使用されます。 APIのシミュレーションには「mock」を使用します。次に、「api_test」にタスクを定義し、「test」フェーズで実行します。このタスクのスクリプトでは、最初に依存関係をインストールし、次に pytest コマンドを実行して API テスト スクリプトを実行します。同様に、別のタスクが「api_mock」で定義され、「mock」フェーズ中に実行されます。このタスクのスクリプトでは、まず依存関係をインストールしてから、カスタマイズされたシミュレーション スクリプトを実行します。
9. API テストとシミュレーションを実行する
コードを GitLab に送信すると、CI/CD 構成によって API テストとシミュレーション タスクが自動的にトリガーされます。 GitLab インターフェイスを介して、対応するタスクの実行結果とログ出力を表示できます。すべてが正常に動作する場合は、API テストとモックのコードの開発と保守を続行し、必要に応じてテストとモックを再実行できます。
概要:
GitLab を API のテストとシミュレーションに使用することで、ソフトウェア開発プロセス中の品質管理をより適切に実施し、API インターフェイスの安定性とパフォーマンスを評価できます。この記事では、GitLab を使用してテスト リポジトリの作成、依存関係のインストール、API テストとシミュレーション用のコードの作成、テスト スクリプトとシミュレーション スクリプトの作成、GitLab で CI/CD 構成を実行する方法を紹介します。この記事の紹介とサンプル コードを通じて、読者が API テストとシミュレーションの手法をより深く理解し、適用できることを願っています。
以上がAPI テストとシミュレーションに GitLab を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。