Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack ๐ŸŽ‰ Learn more
LibreChat

Pengujian Selama Pengembangan

Cara menguji aplikasi secara lokal selama pengembangan.

Pengujian Unit Lokal

Sebelum mengirimkan pembaruan Anda, pastikan pembaruan tersebut lolos semua pengujian unit. Ikuti langkah-langkah berikut untuk menjalankan pengujian secara lokal:

  • Salin file .env.example Anda di folder /api dan ubah namanya menjadi .env

    cp .env.example ./api/.env
  • Tambahkan NODE_ENV=CI ke file /api/.env Anda

  • npm run test:client

  • npm run test:api

  • npm run test:packages:api

  • npm run test:packages:data-provider

  • npm run test:packages:data-schemas

Menjalankan Pengujian Per-Workspace

Pengujian dijalankan menggunakan Jest dari direktori workspace masing-masing. Targetkan file pengujian tertentu dengan pola:

cd api && npx jest <pattern>
cd packages/api && npx jest <pattern>
cd packages/data-provider && npx jest <pattern>
cd packages/data-schemas && npx jest <pattern>
cd client && npx jest <pattern>

Filosofi Pengujian

  • Utamakan logika nyata daripada mock. Lakukan mock hanya pada hal yang tidak dapat dikontrol secara lokal, seperti API HTTP eksternal, layanan dengan batasan kecepatan (rate-limited), dan panggilan sistem yang non-deterministik.
  • Gunakan spy saat Anda perlu memastikan bahwa fungsi asli telah dipanggil dengan argumen yang diharapkan.
  • Gunakan mongodb-memory-server untuk pengujian berbasis MongoDB agar kueri dan validasi skema berjalan sesuai dengan perilaku basis data yang sebenarnya.
  • Cakup status pemuatan (loading), keberhasilan (success), dan kesalahan (error) untuk alur UI/data.

Tips

Gunakan test/layout-test-utils untuk merender komponen dalam pengujian frontend.

Bagaimana panduan ini?