Bagaimana cara menguji perubahan konfigurasi dalam suatu layanan?


9

Apa pendekatan terbaik untuk menguji layanan ketika Anda menambahkan konfigurasi baru? Misalnya layanan saya menawarkan layanan kepada pelanggan dan berdasarkan konfigurasi pelanggan, ia akan menawarkan jenis layanan yang berbeda. Misalnya, jika pelanggan memilih mata uang tertentu mereka ditawari diskon 20% dibandingkan dengan mata uang lain.

Contoh di atas tidak masalah. Yang penting adalah pendekatan yang diambil orang ketika melakukan CI \ CD

Logika untuk mengerjakan diskon ada di domain dan memiliki unit test di sekitarnya. Pertanyaan saya adalah jika Anda memiliki pedagang yang dikonfigurasi dengan aturan yang berbeda untuk mencari tahu diskon (semua berdasarkan konfigurasi dan domain berhasil), maka jika ada permintaan untuk mengubah konfigurasi, bagaimana Anda memverifikasinya?

  1. Apakah Anda menulis lebih banyak tes?
  2. Apakah Anda tidak menguji seperti yang sudah di unit test?
  3. Uji perubahan secara manual?
  4. Lain

Saya telah membaca xUnit Test Patterns dan buku-buku Development-Driven Development bersama dengan banyak artikel tetapi belum menemukan bagaimana orang mengelola ini (perubahan konfigurasi dalam layanan dan memverifikasi kebenaran).

Saya juga tidak melihat ini dibahas dalam buku pengiriman berkelanjutan.

Jawaban:


1

Logika bisnis Anda sudah diuji oleh unit test. Bisakah Anda mengujinya dengan berbagai parameter konfigurasi dengan mudah? Jika tidak, Anda harus memisahkan keduanya:

Konfigurasi <- Aplikasi -> Logika Bisnis

Di sini misalnya, aplikasi Anda menangani pembacaan konfigurasi, dan hanya memanggil logika bisnis dengan parameter. Mudah untuk unit test dengan cara ini.

Dalam pengujian integrasi, Anda menguji bahwa seluruh sistem bekerja bersama, bukan logika bisnis.


0

Buat tes integrasi baru yang memiliki kondisi yang diperlukan dan hasil yang dapat diuji.

Salah satu bagian dari pengaturan tes harus konfigurasi mata uang di mana Anda dapat mengatur mata uang dan dengan demikian menguji diskon khusus.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.