Bagikan melalui


Mulai Cepat: Membuat dan menjalankan uji beban dengan Visual Studio Code dan GitHub Copilot

Pelajari cara menggunakan ekstensi Azure Load Testing untuk Visual Studio Code untuk membuat pengujian beban Locust dengan mudah menggunakan Copilot, melakukan iterasi secara lokal, dan menskalakan dengan mudah di Azure. Baik Anda baru menggunakan Locust atau pakar pengujian performa, ekstensi Azure Load Testing menyederhanakan pembuatan pengujian, iterasi, dan penskalaan, langsung dari lingkungan Visual Studio Code Anda. Azure Load Testing adalah layanan terkelola yang memungkinkan Anda menjalankan pengujian beban dalam skala cloud. Locust adalah alat pengujian beban sumber terbuka yang memungkinkan Anda menulis semua pengujian Anda dalam kode Python.

Panduan memulai cepat ini memandu Anda untuk membuat, menyempurnakan, serta menjalankan pengujian beban yang realistis. Pada akhirnya, Anda memiliki skrip uji beban yang berfungsi penuh yang dihasilkan dari koleksi Postman, koleksi Insomnia, atau file .http, yang ditingkatkan dengan peningkatan yang didukung Copilot, dan siap untuk menskalakan dalam Azure Load Testing.

Prasyarat

  • Ekstensi Azure Load Testing untuk VS Code. Unduh dan instal di sini.
  • GitHub Copilot. Siapkan Copilot di VISUAL Code untuk menghasilkan dan menyempurnakan skrip pengujian. Jika Anda tidak memiliki langganan, Anda dapat mengaktifkan uji coba gratis.
  • Python & Belalang. Diperlukan untuk menjalankan dan memvalidasi skrip pengujian Locust Anda secara lokal dari Visual Studio Code. Instal Locust di sini.
  • Sebuah akun Azure dengan langganan aktif. Diperlukan untuk menjalankan pengujian beban dalam skala besar dalam Azure Load Testing. Buat akun secara gratis.

Petunjuk / Saran

GitHub Copilot Chat di VS Code menawarkan beberapa model AI. Anda dapat beralih model menggunakan pengalih model di bidang input obrolan. Jika Anda tidak yakin mana yang akan digunakan, kami sarankan GPT-4o.

Buka panduan

Untuk memulai, buka palet perintah di Visual Studio Code dan jalankan: Pengujian Beban: Buka Walkthrough. Panduan ini memberikan titik-titik masuk kunci dari ekstensi.

Anda juga dapat mengakses fitur-fitur tersebut langsung dari palet perintah dengan menggunakan awalan Pengujian Beban. Beberapa perintah yang umum digunakan meliputi:

  • Pengujian Beban: Membuat pengujian Belalang

  • Pengujian Beban: Jalankan uji beban (lokal)

  • Pengujian Beban: Jalankan uji beban (Azure Load Testing)

    Cuplikan layar yang memperlihatkan titik entri utama untuk ekstensi Azure Load Testing VS Code.

Membuat skrip Locust dengan Copilot

Anda dapat membuat skrip Locust dari koleksi Postman yang ada, koleksi Insomnia, atau file .http. Jika file berisi beberapa permintaan, Copilot mencoba mengurutkannya ke dalam skenario kohesif.

  1. Klik tombol Buat Uji Beban di panduan, atau jalankan Pengujian Beban: Buat pengujian Locust dari palet perintah.

  2. Anda dapat memilih sumber untuk membuat skrip pengujian Locust secara otomatis:

    • Memilih koleksi Postman, koleksi Insomnia, atau file .http memungkinkan Copilot mengekstrak beberapa operasi API, data permintaan, dan detail autentikasi—membuat pengujian beban yang lebih lengkap dan realistis.
    • Memilih URL Tunggal memungkinkan Anda memasukkan URL titik akhir tunggal, menghasilkan skrip sederhana yang dapat Anda sesuaikan atau perluas.
  3. Untuk panduan ini, Anda dapat memilih Coba Sample: Pet Shop API, yang menggunakan petstore-sample.http file untuk menghasilkan sampel skrip pengujian Locust.

  4. Copilot menganalisis file yang dipilih dan menghasilkan skrip uji beban berbasis Locust, secara otomatis mengurutkan permintaan API untuk mensimulasikan penggunaan dunia nyata dan menangani autentikasi dengan aman.

  5. Setelah skrip dibuat, jendela Copilot Chat akan menyarankan langkah-langkah penyiapan lainnya, seperti menentukan variabel lingkungan. Jika Copilot menyarankan variabel lingkungan, buat .env file di proyek Anda dan tambahkan nilai yang direkomendasikan.

Menyesuaikan skrip uji beban

Sebelum menjalankan pengujian, Anda dapat memperbaikinya dengan Copilot. Misalnya, dengan memeriksa skrip, Anda mungkin melihat bahwa payload permintaan yang sama dikirim dengan setiap permintaan:

payload = {
    "id": self.pet_id,
    "name": "Fluffy",
    "category": {"id": 1, "name": "Dogs"},
    "photoUrls": ["https://example.com/photo.jpg"],
    "tags": [{"id": 1, "name": "cute"}],
    "status": "available"
}

Untuk membuat pengujian lebih dinamis dengan mengacak payload permintaan:

  1. Buka Obrolan Copilot panel.
  2. Ketik: Randomize request payloads dan tekan Enter.
  3. Copilot menghasilkan modifikasi yang disarankan untuk memperkenalkan pengacakan.
  4. Klik Terapkan di Editor yang muncul di atas cuplikan kode yang dihasilkan di jendela Copilot Chat.
  5. Setelah meninjau perubahan, klik Pertahankan untuk menerima dan memperbarui skrip Anda.
  6. Simpan file

Sekarang, setiap permintaan mensimulasikan interaksi pengguna yang lebih realistis. Kode terlihat seperti cuplikan berikut:

payload = {
    "id": self.pet_id,
    "name": f"Pet{random.randint(1, 1000)}",
    "category": {"id": random.randint(1, 10), "name": random.choice(["Dogs", "Cats", "Birds"])},
    "photoUrls": [f"https://example.com/photo{random.randint(1, 100)}.jpg"],
    "tags": [{"id": random.randint(1, 10), "name": random.choice(["cute", "friendly", "playful"])}],
    "status": random.choice(["available", "pending", "sold"])
}

Menjalankan pengujian beban

Anda dapat menjalankan pengujian beban dengan dua cara:

  • Jalankan secara lokal untuk validasi cepat
  • Jalankan di Azure Load Testing untuk beban multi-wilayah berskala tinggi

Jalankan secara lokal untuk validasi cepat

Untuk memvalidasi pengujian Anda dengan cepat, jalankan secara lokal menggunakan Locust dari Visual Studio Code:

  1. Buka palet perintah dan jalankan: Pengujian Beban: Jalankan uji beban (lokal).

  2. UI web Locust secara otomatis diluncurkan di browser. Dibutuhkan beberapa detik agar server Locust siap dan browser terbuka.

  3. Di halaman Mulai uji beban baru , tinjau bidang input dan klik Mulai. Belalang mulai mengirim permintaan, mencatat kegagalan apa pun, dan melacak statistik performa.

    Cuplikan layar yang memperlihatkan UI web Locust untuk menjalankan uji beban secara lokal.

  4. Jelajahi UI Locust untuk menganalisis waktu respons, tingkat kesalahan, dan throughput permintaan.

    Cuplikan layar yang memperlihatkan UI web Locust untuk melihat dan menganalisis hasil pengujian secara lokal.

Petunjuk / Saran

Jika Locust melaporkan kegagalan untuk permintaan Retrieve Pet dan Update Pet, itu mungkin karena cara API Pet Store memproses permintaan. Coba minta Copilot untuk "Tambahkan penundaan acak antara permintaan di run_scenario". Jika Anda mencurigai adanya masalah dengan skrip itu sendiri, atur DEBUG_MODE=True sebagai variabel lingkungan dan jalankan ulang pengujian untuk mendapatkan informasi debug yang lebih rinci.

Jika Anda lebih suka menjalankan pengujian dari Terminal Visual Studio Code:

  1. Buka terminal di Visual Studio Code.

  2. Jalankan perintah berikut:

    locust -f path/to/locustfile.py -u 10 -r 2 --run-time 1m
    
    • -f path/to/locustfile.py: Menentukan skrip pengujian Locust.
    • -u 10: Mensimulasikan hingga 10 pengguna virtual.
    • -r 2: Menambah dua pengguna virtual per detik.
    • --run-time 1m: Menjalankan pengujian selama 1 menit.
  3. Buka browser ke http://0.0.0.0:8089 untuk melihat UI web Locust.

Meningkatkan kapasitas di Azure Load Testing

Untuk skenario beban tinggi di mana Anda perlu mensimulasikan ribuan pengguna virtual bersamaan di beberapa wilayah, Anda dapat menjalankan pengujian Di Azure Load Testing.

Untuk menjalankan pengujian skala besar:

  1. Buka palet perintah dan jalankan: Pengujian Beban: Jalankan uji beban (Azure Load Testing).

  2. Pilih Buat file konfigurasi....

  3. Ikuti proses penyiapan terpandu, yang termasuk:

    • Masuk ke Azure dan memilih langganan Anda.

    • Membuat sumber daya Azure Load Testing baru atau memilih sumber daya yang sudah ada.

    • Memilih wilayah uji beban untuk mendistribusikan lalu lintas secara global.

  4. Setelah penyiapan selesai, file konfigurasi YAML (misalnya, loadtest.config.yaml) dihasilkan dan ditambahkan ke folder akar ruang kerja Anda.

    • File ini mendefinisikan skrip Belalang, parameter beban, variabel lingkungan, wilayah, dan file lainnya (misalnya, himpunan data CSV).

    • Pengaturan awal adalah 200 pengguna virtual yang berjalan selama 120 detik di setiap wilayah yang dipilih.

    • Terapkan file ini di repositori Anda untuk menggunakan kembali dan mengotomatiskan eksekusi pengujian beban di masa mendatang.

  5. Copilot memvalidasi konfigurasi sebelum eksekusi. Ikuti instruksi apa pun yang diberikan di jendela obrolan. Jika semuanya sudah diperiksa, skrip pengujian dan artefak terkait diunggah ke Azure Load Testing dan disiapkan untuk eksekusi. Proses ini mungkin memakan waktu hingga satu menit, dan kemajuan ditampilkan di panel Output .

    Cuplikan layar yang menunjukkan kemajuan pengujian beban di konsol output VISUAL Code.

  6. Saat pengujian dimulai, pemberitahuan (pesan toast) muncul di sudut kanan bawah Visual Studio Code. Klik tombol Buka di Portal Microsoft Azure untuk memantau eksekusi pengujian secara real time.

  7. Saat pengujian dimulai, pemberitahuan (pesan toast) muncul di sudut kanan bawah. Klik tombol Buka di Portal Microsoft Azure untuk memantau eksekusi pengujian secara real time.

    Cuplikan layar yang memperlihatkan hasil pengujian beban di Azure Load Testing.

Petunjuk / Saran

Untuk mengakses hasil pengujian dengan cepat dari eksekusi sebelumnya, gunakan perintah: Pengujian Beban: Melihat eksekusi pengujian beban.

Dalam panduan memulai cepat ini, variabel sensitif seperti API_KEY yang disimpan dalam berkas .env dan diunggah ke layanan awan. Namun, sebagai praktik terbaik, rahasia harus dikelola dengan aman di Azure Key Vault. Ekstensi ini memberikan panduan tentang pengaturan ini.

Sejauh ini dalam panduan cepat ini, variabel sensitif seperti API_KEY disimpan dalam file .env dan diunggah ke layanan cloud. Namun, sebagai praktik terbaik, rahasia harus dikelola dengan aman di Azure Key Vault. Ekstensi ini memberikan panduan tentang pengaturan ini.

  1. Buka jendela Obrolan Copilot , ketik @testing /setupLoadTestSecretsInAzure dan tekan Enter.

  2. Copilot memandu Anda melalui langkah-langkah berikut:

  3. Copilot memandu Anda melalui:

    • Membuat Azure Key Vault.
    • Menetapkan identitas terkelola ke sumber daya Azure Load Testing Anda.
    • Menambahkan rahasia ke Azure Key Vault.
    • Mengonfigurasi file YAML Anda agar mengacu pada rahasia Key Vault alih-alih .env.

Setiap kali Anda memodifikasi skrip Locust atau konfigurasi YAML, Anda dapat menjalankan kembali pengujian dengan menjalankan Uji beban Eksekusi (Azure Load Testing).

Ringkasan

Dalam panduan memulai cepat ini, Anda menggunakan ekstensi Azure Load Testing untuk Visual Studio Code untuk membuat pengujian beban Locust dengan mudah menggunakan Copilot, melakukan iterasi secara lokal, dan meningkatkan skala dengan mudah di Azure. Ekstensi Azure Load Testing untuk VISUAL Code menyederhanakan proses pembuatan skrip pengujian realistis untuk skenario pengujian Anda. Azure Load Testing mengabstraksi kompleksitas menyiapkan infrastruktur untuk mensimulasikan beban pengguna skala tinggi untuk aplikasi Anda.

Anda selanjutnya dapat memperluas pengujian beban untuk juga memantau metrik sisi server aplikasi di bawah beban, dan untuk menentukan metrik kegagalan pengujian agar diberi tahu ketika aplikasi tidak memenuhi kebutuhan Anda. Untuk memastikan bahwa aplikasi terus berkinerja baik, Anda juga dapat mengintegrasikan pengujian beban sebagai bagian dari alur kerja integrasi berkelanjutan dan penyebaran berkelanjutan (CI/CD).