Apa itu Pengujian Konfigurasi? Contoh Kasus Uji

โšก Ringkasan Cerdas

Pengujian Konfigurasi menjalankan aplikasi di berbagai kombinasi perangkat lunak dan perangkat keras, sehingga tim dapat memastikan bahwa persyaratan fungsional masih berlaku di mana pun dan dapat mengidentifikasi konfigurasi optimal untuk rilis.

  • ๐Ÿงฉ Cakupan: OperaSistem operasi, peramban, versi basis data, driver, memori, dan periferal semuanya termasuk dalam konfigurasi.
  • ๐Ÿ“ Dua jenis: Pengujian konfigurasi perangkat lunak mencakup platform dan pembaruan; pengujian konfigurasi perangkat keras mencakup perangkat yang terhubung.
  • ๏ธ Pertama-tama, matriks: Buat matriks kombinasi, lalu prioritaskan, karena cakupan menyeluruh tidak terjangkau.
  • ๏ธ Mesin virtual: Snapshot menggantikan siklus instalasi dan penghapusan instalasi yang berulang pada mesin uji fisik.
  • ๐Ÿฆ Contoh yang dikerjakan: Aplikasi perbankan dan model mesin penghitung uangnya mengilustrasikan kasus uji perangkat keras.
  • ๐Ÿšจ Kegagalan yang disengaja: Menghapus prasyarat secara sengaja akan mengungkap kekurangan yang disembunyikan oleh laboratorium yang lengkap.

Pengujian Konfigurasi di berbagai kombinasi perangkat lunak dan perangkat keras

Pengujian Konfigurasi

Pengujian Konfigurasi adalah teknik pengujian perangkat lunak di mana aplikasi diuji dengan berbagai kombinasi perangkat lunak dan perangkat keras, untuk mengevaluasi persyaratan fungsional dan menemukan konfigurasi optimal di mana aplikasi bekerja tanpa cacat atau kekurangan.

Konfigurasi adalah kombinasi apa pun yang harus didukung oleh produk: versi sistem operasi, peramban, rilis basis data, driver, ukuran memori, atau periferal yang terhubung. Penting untuk memisahkan hal ini dari... pengujian kompatibilitas, yang menanyakan apakah produk tersebut dapat berjalan beriringan dengan perangkat lunak dan platform lain. Pengujian konfigurasi mengajukan pertanyaan yang lebih spesifik: apakah build yang sama masih berfungsi dengan benar setelah pengaturan yang didukungnya berubah?

Contoh Pengujian Konfigurasi

Pertimbangkan aplikasi desktop sebagai contoh praktis.

Aplikasi desktop biasanya dibangun dalam bentuk 2 tingkat atau 3 tingkat. Ambil contoh aplikasi desktop 3 tingkat yang dikembangkan di ASP.NET, yang terdiri dari Klien, Server Logika Bisnis, dan Server Basis Data, di mana setiap komponen mendukung platform yang tercantum di bawah ini.

  • Platform klien โ€“ Windows XP, Windows 7, Windows 8, dan seterusnya
  • Platform server โ€“ Windows Server 2008, Windows Server2008 R2, Windows 2012 R2 Server
  • Basis Data โ€“ SQL Server 2008, SQL Server 2008 R2, SQL Server 2012, dan seterusnya.

Penguji harus menjalankan klien, server, dan basis data secara bersamaan di berbagai versi platform dan basis data tersebut, untuk memastikan bahwa aplikasi berfungsi dengan benar dan tidak mengalami kegagalan pada kombinasi apa pun yang didukung.

Pengujian konfigurasi tidak terbatas pada perangkat lunak. Ini juga berlaku untuk perangkat keras, itulah sebabnya sisi perangkat keras disebut pengujian konfigurasi perangkat keras: printer, pemindai, webcam, dan perangkat serupa yang harus didukung oleh aplikasi yang sedang diuji. Matriks di bawah ini menunjukkan bagaimana kombinasi tersebut disusun sebelum eksekusi pengujian dimulai.

Matriks pengujian konfigurasi kombinasi klien, server, dan basis data

Prasyarat untuk Pengujian Konfigurasi

Sebelum pengujian konfigurasi dimulai pada proyek apa pun, tiga prasyarat harus terpenuhi.

  • Pembuatan matriks yang mencantumkan berbagai kombinasi konfigurasi perangkat lunak dan perangkat keras.
  • Memprioritaskan konfigurasi-konfigurasi tersebut, karena menguji setiap konfigurasi satu per satu bukanlah hal yang realistis.
  • Menguji setiap konfigurasi sesuai urutan yang ditentukan oleh prioritas tersebut.

Tujuan Pengujian Konfigurasi

Pengujian konfigurasi bertujuan untuk mencapai hal-hal berikut.

  • Validasi aplikasi terhadap persyaratan konfigurasi yang dibutuhkan.
  • Sengaja menyebabkan kegagalan untuk mengungkap cacat yang tidak terdeteksi oleh pengujian biasa, misalnya dengan mengubah pengaturan regional seperti zona waktu, bahasa, atau format tanggal.
  • Tentukan konfigurasi optimal dari aplikasi yang sedang diuji.
  • Analisis kinerja sistem saat sumber daya perangkat keras berubah, seperti menambahkan penyeimbang beban, menambah atau mengurangi memori, atau menghubungkan model printer yang berbeda.
  • Analisis efisiensi sistem terhadap prioritas, dengan menilai seberapa baik pengujian menggunakan sumber daya yang tersedia untuk mencapai konfigurasi optimal tersebut.
  • Verifikasi sistem dalam lingkungan yang terdistribusi secara geografis, misalnya dengan server di satu lokasi dan klien di lokasi lain, di mana sistem tersebut harus berfungsi terlepas dari pengaturan sistem lokal.
  • Verifikasi seberapa mudah cacat muncul kembali ketika konfigurasi berubah.
  • Konfirmasikan bahwa item aplikasi tetap ada tracdimungkinkan melalui dokumentasi yang tepat dan catatan versi yang dapat diidentifikasi dengan jelas.
  • Konfirmasikan bahwa item aplikasi tetap mudah dikelola sepanjang proses. siklus hidup pengembangan perangkat lunak

Bagaimana melakukan Pengujian Konfigurasi

Strategi tersebut bergantung pada jenis pengujian konfigurasi mana dari kedua jenis tersebut yang sedang dalam lingkup pengujian.

  • Pengujian Konfigurasi Perangkat Lunak
  • Pengujian Konfigurasi Perangkat Keras

Pengujian Konfigurasi Perangkat Lunak

Pengujian konfigurasi perangkat lunak menjalankan aplikasi yang diuji terhadap berbagai sistem operasi, pembaruan perangkat lunak, dan versi dependensi. Proses ini memakan waktu, karena setiap putaran berarti menginstal dan menghapus instalasi perangkat lunak yang terlibat.

Salah satu cara umum untuk memangkas biaya tersebut adalah dengan melakukan pengujian pada... mesin virtualMesin virtual adalah lingkungan yang diinstal dalam perangkat lunak yang berperilaku seperti perangkat keras fisik, sehingga penguji bekerja seolah-olah pada mesin nyata sementara konfigurasi itu sendiri dapat diubah. Mesin virtual mensimulasikan konfigurasi nyata dengan cukup akurat untuk sebagian besar pemeriksaan fungsional.

Alih-alih menginstal dan menghapus instalasi pada beberapa mesin fisik, aplikasi diinstal pada mesin virtual dan pengujian dilanjutkan dari sana. Menjalankan beberapa mesin virtual secara paralel, masing-masing dipulihkan dari snapshot, sangat menyederhanakan pekerjaan.

Pengujian konfigurasi perangkat lunak biasanya dapat dimulai ketika

  • Persyaratan konfigurasi yang akan diuji telah ditentukan.
  • The lingkungan pengujian siap
  • Tim penguji dilatih dalam pengujian konfigurasi.
  • Versi yang dirilis telah lolos pengujian unit dan integrasi.

Yang khas strategi pengujian Strategi pertama adalah menjalankan rangkaian pengujian fungsional di setiap konfigurasi perangkat lunak dan memverifikasi bahwa aplikasi berperilaku sesuai yang diharapkan, tanpa cacat atau kesalahan. Strategi kedua adalah sengaja membuat kasus uji gagal dan memeriksa seberapa efisien sistem mengatasinya.

Contoh:

Ambil contoh aplikasi perbankan yang harus diuji di berbagai browser. Jika dihosting di lingkungan yang memenuhi semua prasyarat, aplikasi tersebut mungkin akan lolos pengujian unit dan tes integrasi di laboratorium pengujian.

Saat diinstal di lokasi klien, aplikasi yang sama mungkin gagal karena mesin-mesin tersebut kekurangan pembaruan perangkat lunak atau versi dependensi yang dibutuhkan aplikasi secara langsung maupun tidak langsung. Sengaja menggagalkan pengujian dengan menghapus beberapa persyaratan konfigurasi, lalu mengujinya kembali, adalah cara untuk mengungkap jenis cacat tersebut sebelum pelanggan menemukannya. Layar di bawah menunjukkan kegagalan yang bergantung pada konfigurasi tersebut yang direproduksi dalam lingkungan terkontrol.

Aplikasi perbankan gagal pada mesin klien karena prasyarat yang tidak terpenuhi.

Pengujian Konfigurasi Perangkat Keras

Pengujian konfigurasi perangkat keras umumnya dilakukan di laboratorium yang memiliki mesin fisik dengan berbagai perangkat keras yang terpasang padanya.

Setiap kali sebuah build dirilis, perangkat lunak akan diinstal pada setiap mesin tersebut dan rangkaian pengujian akan dijalankan pada masing-masing mesin, untuk memastikan aplikasi berfungsi dengan perangkat yang terhubung.

Tugas itu membutuhkan upaya yang signifikan: menginstal perangkat lunak di setiap mesin, memasang perangkat keras, dan kemudian menjalankan rangkaian pengujian secara manual atau mengotomatisasinya terlebih dahulu.

Jenis perangkat keras yang akan diuji juga harus ditentukan. Perangkat keras dan periferal komputer sangat beragam sehingga tidak mungkin untuk mencakup semuanya, jadi penguji menganalisis perangkat mana yang sebenarnya diandalkan oleh basis pengguna dan melakukan pengujian sesuai dengan prioritas tersebut.

Contoh Kasus Uji

Pertimbangkan skenario perbankan yang diuji kompatibilitas perangkat kerasnya. Aplikasi perbankan yang terhubung ke mesin penghitung uang harus dapat bekerja dengan beberapa model, seperti Rolex, Strob, Maxsell, dan StoK.

Pengiriman kasus uji Komponen yang termasuk dalam mesin penghitung uang adalah sebagai berikut.

  • Verifikasi koneksi antara aplikasi dan model Rolex ketika prasyarat BELUM terpasang.
  • Verifikasi koneksi antara aplikasi dan model Rolex setelah prasyarat terpasang.
  • Pastikan sistem menghitung uang kertas dengan benar.
  • Verifikasi bagaimana sistem melaporkan kesalahan penghitungan.
  • Verifikasi penanganan uang kertas yang telah dimanipulasi.
  • Verifikasi waktu respons
  • Pastikan uang palsu terdeteksi.

Kasus-kasus tersebut hanya mencakup satu model, dan setiap model lain di pasaran harus disiapkan di laboratorium pengujian dan diuji dengan cara yang sama, yang jarang praktis dilakukan di internal perusahaan. Mengalihdayakan pengujian konfigurasi perangkat keras ke organisasi yang berspesialisasi di bidang tersebut seringkali merupakan pilihan yang lebih realistis.

Pertanyaan Umum Demo Slot

Pengujian konfigurasi memvariasikan pengaturan yang didukung produk itu sendiri โ€” sistem operasi, versi basis data, perangkat yang terhubung โ€” dan menjalankan kembali rangkaian pengujian. Pengujian kompatibilitas memeriksa bahwa produk tersebut dapat berjalan bersamaan dengan perangkat lunak eksternal, platform, dan peramban yang harus bekerja bersamanya.

Sebanyak yang sesuai dengan risiko yang ada. Analisis penggunaan menentukan urutan: kombinasi platform, peramban, dan perangkat yang paling banyak digunakan oleh basis pengguna akan dibahas terlebih dahulu, diikuti oleh spesifikasi minimum yang didukung.

Biasanya tim QA, yang didukung oleh administrator sistem yang menyediakan lingkungan. Pada produk yang sarat dengan perangkat keras, tim lab khusus, atau spesialis dari luar, bertanggung jawab atas cakupan perangkat fisik.

Platform mesin virtual dan kontainer untuk pengaturan perangkat lunak, laboratorium perangkat atau pusat data perangkat berbasis cloud untuk perangkat keras dan peramban, dan sebuah otomatisasi uji kerangka kerja untuk memutar ulang rangkaian yang sama pada setiap konfigurasi.

Ledakan kombinatorial, biaya lisensi dan perangkat fisik, penyediaan lingkungan yang lambat, dan cacat yang hanya terjadi pada satu konfigurasi. Prioritisasi dan virtualisasi mengatasi sebagian besar masalah tersebut.

Setelah pengujian unit dan integrasi berhasil, dan biasanya bersamaan dengan pengujian sistem. Proses ini diulang sebelum setiap rilis utama, karena sistem operasi atau versi driver baru dapat membatalkan hasil sebelumnya.

Model-model tersebut memberi peringkat kombinasi konfigurasi berdasarkan penggunaan aktual dan data cacat historis, sehingga matriks dipangkas ke baris dengan risiko tertinggi. Mereka juga mengelompokkan kegagalan untuk menunjukkan mana yang memiliki penyebab konfigurasi tunggal.

Ya. Ini menyusun kerangka pengujian berparameter, skrip penyediaan lingkungan, dan definisi pekerjaan CI yang menjalankan satu rangkaian pengujian di berbagai konfigurasi. Matriks itu sendiri masih harus berasal dari daftar platform yang didukung.

Ringkaslah postingan ini dengan: