Apa itu Pengujian Cloud? Tutorial Pengujian SaaS

Pengujian Awan

Pengujian Awan adalah jenis pengujian perangkat lunak di mana aplikasi perangkat lunak diuji menggunakan layanan komputasi awan. Tujuan pengujian Cloud adalah untuk menguji perangkat lunak untuk persyaratan fungsional dan non-fungsional menggunakan komputasi awan yang memastikan ketersediaan lebih cepat dengan skalabilitas dan fleksibilitas untuk menghemat waktu dan biaya pengujian perangkat lunak.

Komputasi awan adalah platform berbasis internet yang menyediakan berbagai layanan komputasi seperti perangkat keras, perangkat lunak, dan layanan terkait komputer lainnya dari jarak jauh.

Terutama ada tiga model Cloud Computing :

  • SaaS– Perangkat lunak sebagai layanan
  • PaaS– Platform sebagai layanan
  • IaaS– Infrastruktur sebagai layanan

Jenis Pengujian di Cloud

Seluruh pengujian cloud disegmentasi menjadi empat kategori utama

  • Pengujian seluruh cloud: Cloud dipandang sebagai satu kesatuan dan berdasarkan fitur-fiturnya, pengujian dilakukan. Vendor Cloud dan SaaS, serta pengguna akhir, tertarik untuk melakukan pengujian jenis ini
  • Menguji dalam cloud: Dengan memeriksa setiap fitur internalnya, maka dilakukan pengujian. Hanya vendor cloud yang dapat melakukan pengujian jenis ini
  • Pengujian melintasi cloud: Pengujian dilakukan pada berbagai jenis cloud privat, publik, dan hybrid seperti cloud
  • Pengujian SaaS di cloud: Pengujian fungsional dan non-fungsional dilakukan berdasarkan persyaratan aplikasi

Pengujian SaaS

Pengujian SaaS adalah proses pengujian perangkat lunak di mana aplikasi perangkat lunak yang dibangun dalam model Perangkat Lunak sebagai Layanan diuji untuk persyaratan fungsional dan non-fungsional. Tujuan pengujian SaaS adalah untuk memastikan kualitas dengan menguji keamanan data, integritas, kinerja, kompatibilitas, dan skalabilitas aplikasi perangkat lunak.

Pengujian SaaS

Pengujian cloud berfokus pada komponen inti seperti

  1. Aplikasi: Ini mencakup pengujian fungsi, alur kerja bisnis ujung ke ujung, keamanan data, kompatibilitas browser, dll.
  2. jaringan: Ini mencakup pengujian berbagai bandwidth jaringan, protokol, dan keberhasilan transfer data melalui jaringan.
  3. Infrastruktur: Ini mencakup pengujian pemulihan bencana, pencadangan, koneksi aman, dan kebijakan penyimpanan. Infrastruktur perlu divalidasi untuk kepatuhan terhadap peraturan

Jenis Pengujian lainnya di Cloud termasuk

  • Performance
  • Ketersediaan
  • Pemenuhan
  • Security
  • Skalabilitas
  • Multi-penyewaan
  • Pengujian peningkatan langsung

Bagaimana melakukan Pengujian Cloud

Jenis Pengujian Cloud Tugas Dilakukan
Pengujian SaaS atau Berorientasi Cloud: Jenis pengujian ini biasanya dilakukan oleh vendor cloud atau SaaS. Tujuan utamanya adalah untuk menjamin kualitas fungsi layanan yang ditawarkan di cloud atau program SaaS. Pengujian yang dilakukan pada lingkungan ini adalah integrasi, fungsional, keamanan, unit, validasi fungsi sistem dan Pengujian Regresi serta evaluasi kinerja dan skalabilitas.
Pengujian aplikasi berbasis online di cloud: Vendor aplikasi online melakukan pengujian ini untuk memeriksa kinerja dan Pengujian Fungsional dari layanan berbasis cloud. Ketika aplikasi terhubung dengan sistem lama, kualitas konektivitas antara sistem lama dan aplikasi yang sedang diuji di cloud akan divalidasi.
Pengujian aplikasi berbasis cloud melalui cloud: Untuk memeriksa kualitas aplikasi berbasis cloud di berbagai cloud, jenis pengujian ini dilakukan.

Contoh kasus Uji untuk Cloud Testing

Skenario Uji Uji kasus
Pengujian Kinerja
  • Kegagalan karena tindakan satu pengguna di cloud seharusnya tidak memengaruhi kinerja pengguna lainnya
  • Penskalaan manual atau otomatis tidak boleh menimbulkan gangguan apa pun
  • Di semua jenis perangkat, performa aplikasi harus tetap sama
  • Pemesanan berlebih di pihak pemasok tidak boleh menghambat kinerja aplikasi
Pengujian Keamanan
  • Satu-satunya pelanggan resmi yang boleh mendapatkan akses ke data
  • Data harus dienkripsi dengan baik
  • Data harus dihapus seluruhnya jika tidak digunakan oleh klien
  • Data harus dapat diakses dengan enkripsi yang tidak memadai
  • Administrasi di pihak pemasok tidak boleh mengakses data pelanggan
  • Periksa berbagai pengaturan keamanan seperti firewall, VPN, Anti-virus, dll.
Pengujian fungsional
  • Masukan yang valid harus memberikan hasil yang diharapkan
  • Layanan harus terintegrasi dengan baik dengan aplikasi lain
  • Sistem harus menampilkan jenis akun pelanggan ketika berhasil masuk ke cloud
  • Ketika pelanggan memilih untuk beralih ke layanan lain, layanan yang berjalan akan ditutup secara otomatis
Pengujian Interoperabilitas & Kompatibilitas
  • Validasi persyaratan kompatibilitas aplikasi dalam sistem pengujian
  • Periksa kompatibilitas browser di lingkungan cloud
  • Identifikasi Cacat yang mungkin muncul saat terhubung ke cloud
  • Data apa pun yang tidak lengkap di cloud tidak boleh ditransfer
  • Verifikasi bahwa aplikasi berfungsi di platform cloud yang berbeda
  • Uji aplikasi di lingkungan internal lalu terapkan di lingkungan cloud
Pengujian Jaringan
  • Protokol uji yang bertanggung jawab atas konektivitas cloud
  • Periksa integritas data saat mentransfer data
  • Periksa konektivitas jaringan yang tepat
  • Periksa apakah paket dijatuhkan oleh firewall di kedua sisi
Pengujian Beban dan Stres
  • Periksa layanan ketika banyak pengguna mengakses layanan cloud
  • Identifikasi Cacat yang menyebabkan kegagalan perangkat keras atau lingkungan
  • Periksa apakah sistem gagal karena peningkatan beban spesifik
  • Periksa bagaimana sistem berubah seiring waktu di bawah beban tertentu

Tantangan dalam Pengujian Cloud

Tantangan #1: Keamanan dan Privasi Data

Aplikasi cloud bersifat multi-tenant, risiko pencurian data selalu ada. Sebagai strategi pengujian cloud, pengguna harus diberikan jaminan tentang keamanan data mereka oleh pemasok.

Tantangan #2: Periode pemberitahuan singkat

Penyedia cloud memberikan jangka waktu pemberitahuan singkat (1-2 minggu) kepada pelanggan lama tentang peningkatan. Ini adalah masalah besar saat memvalidasi perubahan pada aplikasi SaaS Anda secara manual.

Tantangan #3: Memvalidasi kompatibilitas antarmuka

Dengan peningkatan pada penyedia layanan Cloud, terkadang antarmuka eksternal juga ditingkatkan yang merupakan tantangan bagi beberapa pelanggan yang terbiasa dengan antarmuka lama. Pelanggan Cloud(SaaS) perlu memastikan bahwa pengguna dapat memilih versi antarmuka yang mereka inginkan

Tantangan#4: Migrasi Data

Migrasi data dari satu penyedia Cloud ke penyedia Cloud lainnya merupakan tantangan besar karena kedua penyedia mungkin memiliki skema database yang berbeda dan memerlukan banyak upaya untuk memahami bidang data, hubungan, dan bagaimana pemetaannya di seluruh aplikasi SaaS.

Tantangan #5: Integrasi Aplikasi Perusahaan

Integrasi aplikasi perusahaan memerlukan validasi integrasi data baik data keluar maupun masuk, dari jaringan klien ke aplikasi SaaS dan sebaliknya. Privasi data memerlukan validasi menyeluruh untuk memastikan pelanggan SaaS tentang keamanan dan privasi data.

Tantangan #6: Mensimulasikan pengujian peningkatan langsung

Tantangan terbesar pengujian cloud adalah memastikan bahwa peningkatan langsung tidak berdampak pada pengguna SaaS yang terhubung

Pengujian Cloud Vs Pengujian Konvensional

Parameter Pengujian Pengujian Konvensional Pengujian Awan
Tujuan Pengujian Utama
  • Periksa interoperabilitas, kompatibilitas, kegunaan.
  • Memverifikasi kualitas fungsi dan kinerja sistem berdasarkan spesifikasi yang diberikan
  • Memverifikasi kualitas kinerja dan fungsi SaaS, Clouds, dan aplikasi dengan memanfaatkan lingkungan cloud
Biaya Pengujian
  • Biaya tetap tinggi karena kebutuhan perangkat keras dan perangkat lunak
  • Hanya perlu membayar biaya operasional. Bayar hanya apa yang Anda gunakan.
Simulasi Tes
  • Simulasi data lalu lintas online
  • Simulasi akses pengguna online
  • Simulasi data lalu lintas online
  • Simulasi akses pengguna online
Pengujian Fungsional
  • Memvalidasi fungsi (unit dan sistem) serta fitur-fiturnya
  • Menguji fungsi aplikasi end-to-end di SaaS atau Cloud
Lingkungan Pengujian
  • Lingkungan pengujian yang telah diperbaiki dan dikonfigurasi sebelumnya di lab pengujian
  • Lingkungan pengujian publik terbuka dengan beragam sumber daya komputasi
Tes integrasi
  • Pengujian berbasis komponen, arsitektur, dan fungsi
  • Pengujian Integrasi berbasis SaaS
Pengujian Keamanan
  • Menguji fitur keamanan berdasarkan proses, server, dan privasi
  • Menguji fitur keamanan berbasis cloud, SaaS dan tes waktu nyata di cloud vendor
Pengujian Kinerja dan Skalabilitas
  • Melakukan lingkungan pengujian tetap
  • Terapkan data pengujian online waktu nyata dan virtual