ホームページ  >  記事  >  開発ツール  >  API テストとシミュレーションに GitLab を使用する方法

API テストとシミュレーションに GitLab を使用する方法

WBOY
WBOYオリジナル
2023-10-27 17:35:111282ブラウズ

API テストとシミュレーションに GitLab を使用する方法

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。