Rumah  >  Artikel  >  alat pembangunan  >  Cara menggunakan GitLab untuk ujian dan simulasi API

Cara menggunakan GitLab untuk ujian dan simulasi API

WBOY
WBOYasal
2023-10-27 17:35:111283semak imbas

Cara menggunakan GitLab untuk ujian dan simulasi API

Cara menggunakan GitLab untuk ujian dan simulasi API

Pengenalan:
Dalam proses pembangunan perisian, API (Antarmuka Pengaturcaraan Aplikasi, antara muka pengaturcaraan aplikasi) ujian dan simulasi adalah langkah yang sangat penting, ia boleh membantu pembangun mengesahkan API ketepatan dan prestasi, dan masalah yang berpotensi boleh ditemui lebih awal. GitLab ialah platform pengehosan kod yang sangat popular yang melaksanakan fungsi seperti kawalan versi dan kerjasama pasukan. Artikel ini akan memperkenalkan cara menggunakan GitLab untuk ujian dan simulasi API, serta memberikan contoh kod khusus.

1. Buat gudang ujian
Buat gudang ujian baharu dalam GitLab untuk menyimpan kod dan fail konfigurasi yang berkaitan dengan ujian API. Anda boleh mencipta repositori baharu dengan mengklik butang "Projek baharu" pada antara muka GitLab, atau dengan melaksanakan arahan berikut melalui alat baris arahan:

$ 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

Arahan di atas akan mengklon repositori jauh dan mencipta fail README.md secara setempat . dan menolaknya ke gudang jauh. Seterusnya, kami boleh membuat direktori dan fail atas dasar ini untuk menyimpan kod dan fail konfigurasi yang berkaitan dengan ujian API.

2. Pasang kebergantungan yang diperlukan
Sebelum menjalankan ujian dan simulasi API, kami perlu memasang beberapa kebergantungan yang diperlukan. Buat fail bernama "requirements.txt" dalam direktori akar gudang dan tambah kandungan berikut pada fail:

python-gitlab
flask
pytest

Kemudian laksanakan arahan berikut untuk memasang dependensi ini:

$ pip install -r requirements.txt

3. Tulis kod ujian API
Dalam Cipta fail Python bernama "api_test.py" dalam gudang dan tulis kod ujian API di dalamnya. Berikut ialah contoh mudah:

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()

Dalam kod di atas, kami menggunakan rangka kerja Flask untuk mencipta API mudah dan menentukan laluan "/api/hello" Apabila laluan diminta, respons berformat JSON dikembalikan . Kita boleh menulis kod ujian API yang lebih kompleks mengikut keperluan sebenar.

4. Tulis kod simulasi API
Buat fail Python bernama "api_mock.py" dalam gudang dan tulis kod simulasi API di dalamnya. Berikut ialah contoh mudah:

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()

Dalam kod di atas, kami telah mencipta mock API mudah menggunakan rangka kerja Flask dan menentukan laluan "/api/hello" yang sama seperti API sebelumnya, tetapi respons yang dikembalikan ialah " Olok-olok Hello!". Kita boleh menulis kod simulasi API yang lebih kompleks mengikut keperluan sebenar.

5. Tulis skrip ujian
Buat fail Python bernama "test_api.py" dalam gudang dan tulis skrip ujian API di dalamnya. Berikut ialah contoh mudah:

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()

Dalam kod di atas, kami menulis skrip ujian API ringkas menggunakan perpustakaan pytest dan menentukan kes ujian bernama "test_api_hello" yang menghantar permintaan GET ke API hadapan untuk mengesahkan sama ada respons yang dikembalikan kod status dan kandungan mesej adalah konsisten dengan jangkaan. Kami boleh menulis lebih banyak kes ujian mengikut keperluan sebenar.

6. Tulis skrip simulasi
Buat fail Python bernama "mock_api.py" dalam gudang dan tulis skrip simulasi API di dalamnya. Berikut ialah contoh mudah:

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)

Dalam kod di atas, kami menggunakan perpustakaan subproses untuk membuka proses baharu untuk memulakan simulasi API, dan kemudian tunggu dalam konsol untuk pengguna memasukkan sebarang kunci untuk menghentikan simulasi. Kita boleh menulis skrip simulasi yang lebih kompleks mengikut keperluan sebenar.

7 Serahkan kod ke GitLab
Selepas melengkapkan penulisan kod ujian dan simulasi API, kami boleh menyerahkannya ke gudang GitLab. Jalankan arahan berikut untuk menyerahkan kod ke gudang jauh:

$ git add .
$ git commit -m "add API test and mock code"
$ git push

8. Konfigurasi CI/CD dalam GitLab
Untuk mencapai ujian dan simulasi API automatik, kami boleh mengkonfigurasi CI/CD (Continuous Integration/Continuous Deployment) dalam GitLab . Cipta fail bernama ".gitlab-ci.yml" dalam repositori dan tambah kandungan berikut di dalamnya:

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

Dalam konfigurasi di atas, kami mula-mula mentakrifkan dua peringkat: "ujian" digunakan untuk Ujian API, "olok-olok" ialah digunakan untuk simulasi API. Kemudian, tugas ditakrifkan dalam "api_test", yang akan dilaksanakan dalam fasa "ujian". Dalam skrip tugasan ini, kami mula-mula memasang kebergantungan, dan kemudian melaksanakan perintah pytest untuk menjalankan skrip ujian API. Begitu juga, tugas lain ditakrifkan dalam "api_mock", yang akan dilaksanakan semasa fasa "mock". Dalam skrip tugasan ini, kami mula-mula memasang kebergantungan dan kemudian melaksanakan skrip simulasi tersuai.

9 Jalankan ujian dan simulasi API
Apabila kami menyerahkan kod ke GitLab, konfigurasi CI/CD akan mencetuskan tugasan ujian dan simulasi API secara automatik. Kita boleh melihat hasil larian bagi tugasan yang sepadan dan keluaran log melalui antara muka GitLab. Jika semuanya berfungsi dengan baik, maka kami boleh terus membangunkan dan mengekalkan kod untuk ujian dan olok-olok API, dan jalankan semula ujian dan olok-olok jika perlu.

Ringkasan:
Dengan menggunakan GitLab untuk ujian dan simulasi API, kami boleh menjalankan kawalan kualiti dengan lebih baik semasa proses pembangunan perisian, dan menilai kestabilan dan prestasi antara muka API. Artikel ini memperkenalkan cara menggunakan GitLab untuk mencipta repositori ujian, memasang kebergantungan, menulis kod untuk ujian dan simulasi API, menulis skrip ujian dan skrip simulasi serta melaksanakan konfigurasi CI/CD dalam GitLab. Saya harap pembaca dapat lebih memahami dan menggunakan teknik ujian dan simulasi API melalui pengenalan dan contoh kod artikel ini.

Atas ialah kandungan terperinci Cara menggunakan GitLab untuk ujian dan simulasi API. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn