Вы находитесь на странице: 1из 36

Tugas Unit 13

Oleh Jawaj Duha


Metodologi Pengujian
Metodologi Pengujian dalam rekayasa perangkat lunak adalah strategi pengujian, pendekatan atau
metode yang digunakan untuk menguji produk tertentu untuk memastikan kegunaannya. Itu
memastikan bahwa produk berfungsi sesuai spesifikasi yang diberikan dan tidak memiliki efek
samping saat digunakan di luar parameter desain.

Mengapa Metodologi Pengujian Perangkat Lunak itu penting?

• Itu mengelola persyaratan proyek Anda, kasus uji, bug, masalah dalam satu lingkungan
terintegrasi selama siklus hidup pengujian.
• Ini adalah solusi pengujian lengkap yang mencakup manajemen persyaratan, desain kasus
uji, manajemen rilis, pelacakan cacat, dll.
• Ini adalah pendekatan pengujian yang sangat intuitif yang memberikan gambaran lengkap
tentang produk perangkat lunak dan status kesehatan.

Metodologi Pengujian Fungsional Vs Non-


Fungsional
Pengujian Fungsional melibatkan pengujian aplikasi terhadap persyaratan bisnis yang mencakup
beberapa jenis pengujian yang dirancang untuk menjamin bahwa setiap bagian dari perangkat
lunak berperilaku dengan cara yang sama seperti yang diharapkan oleh pengguna.

Metode Pengujian Non-Fungsional menggabungkan berbagai jenis pengujian yang berfokus pada
aspek operasional perangkat lunak. Ini adalah kunci untuk merilis perangkat lunak berkualitas
tinggi yang dapat dengan mudah diadopsi oleh pengguna akhir dengan membangun kerangka
pengujian yang kuat yang mengimplementasikan metodologi pengujian fungsional dan non-
fungsional.

Pengujian Unit
• Ini adalah tingkat pengujian awal yang biasanya dilakukan oleh pengembang dalam
lingkungan yang digerakkan oleh pengujian, tulis dan jalankan kasus pengujian sebelum
perangkat lunak diteruskan ke tim pengujian.
• Pengujian unit adalah metodologi pengujian perangkat lunak yang memastikan bahwa
masing-masing komponen perangkat lunak bekerja dengan sempurna untuk tujuan yang
dirancang.
• Pengujian unit memudahkan proses debug karena bug terdeteksi jauh lebih awal dan mudah
diperbaiki oleh tim pengujian.

Pengujian Unit - Keuntungan


• Mengurangi Cacat pada fitur yang baru dikembangkan atau mengurangi bug saat mengubah
fungsionalitas yang ada
• Mengurangi Biaya Pengujian karena kerusakan ditangkap pada fase yang sangat awal
• Meningkatkan desain dan memungkinkan pemfaktoran ulang kode yang lebih baik
• Tes Unit, ketika diintegrasikan dengan build memberikan kualitas build juga
Kekurangan/Keterbatasan Unit
• e Pengujian tidak dapat menangkap setiap bug dalam aplikasi
• Tidak mungkin mengevaluasi setiap jalur eksekusi di setiap aplikasi perangkat lunak
Ada batasan jumlah skenario dan data pengujian yang dapat digunakan pengembang untuk
memverifikasi kode sumber.
Siklus Hidup
Pengujian Unit
Teknik Pengujian Unit:

1. Black Box Testing - Menggunakan


antarmuka pengguna, input dan output
yang diuji
2. Pengujian Kotak Putih - digunakan untuk
menguji setiap fungsi yang diuji perilakunya
3. Pengujian Kotak Abu-abu - Digunakan
untuk menjalankan pengujian, risiko, dan metode penilaian.

Ujian penerimaan
• Pengujian penerimaan adalah fase terakhir dari pengujian fungsional untuk menilai perangkat
lunak akhir untuk pengiriman.
• Itu memastikan bahwa produk tersebut sesuai dengan kriteria bisnis dan memenuhi
kebutuhan pengguna akhir sepenuhnya.
• Itu melakukan pengujian secara internal dan eksternal. Ini berarti produk diberikan ke tangan
pengguna untuk pengujian beta dan juga diuji oleh tim kualitas.
• Pengujian beta adalah kunci untuk mendapatkan umpan balik potensial dari pengguna dan
mengatasinya sebelum pengiriman produk akhir.
Pengujian Penerimaan di
SDLC
Diagram berikut menjelaskan pengujian penerimaan dalam siklus hidup pengembangan
perangkat lunak.

Kasus uji penerimaan dijalankan terhadap data uji


atau menggunakan skrip pengujian penerimaan
dan kemudian hasilnya dibandingkan dengan yang
diharapkan.
Pengujian Penerimaan - Kriteria
Kriteria penerimaan ditentukan berdasarkan atribut berikut:

• Ketepatan dan Kelengkapan Fungsional


• Integritas data
• Konversi data
• Kegunaan
• Pertunjukan
• Ketepatan waktu
• Kerahasiaan dan Ketersediaan
• Installability dan Upgradeability
• Skalabilitas
• Dokumentasi
Rencana Pengujian Penerimaan - Atribut
Kegiatan acceptance test dilakukan secara bertahap. Pertama, tes dasar dijalankan, hasilnya
memuaskan kemudian eksekusi skenario yang lebih kompleks dilakukan.

Rencana uji Penerimaan memiliki atribut berikut:

• Perkenalan
• Kategori Tes Penerimaan
• Lingkungan Operasi
• ID Kasus Uji
• Judul Tes
• Tujuan Tes
Laporan Uji Penerimaan - Atribut
Laporan uji Penerimaan memiliki atribut berikut:

• Pengenal Laporan
• Ringkasan Hasil
• Variasi
• Rekomendasi
• Ringkasan To-Do List
• Keputusan Persetujuan
Siapa yang melakukan Acceptance
Testing?
• Pengujian Penerimaan Internal (juga dikenal sebagai Pengujian Alfa) dilakukan oleh anggota
organisasi yang mengembangkan perangkat lunak. tetapi tidak terlibat langsung dalam
proyek tersebut. Biasanya anggota Manajemen Produk, Penjualan atau Dukungan
Pelanggan.
• Pengujian Penerimaan Eksternal - dilakukan oleh orang yang bukan karyawan organisasi
yang mengembangkan perangkat lunak.
• Pengujian Penerimaan Pelanggan dilakukan oleh pelanggan organisasi yang
mengembangkan perangkat lunak. Merekalah yang meminta organisasi untuk
mengembangkan perangkat lunak.
• Pengujian Penerimaan Pengguna - (Juga dikenal sebagai Pengujian Beta) dilakukan oleh
pengguna akhir perangkat lunak.

Keuntungan Pengujian Penerimaan:


• Memvalidasi bahwa persyaratan bisnis terpenuhi berdasarkan cerita pengguna dalam
lingkup
• Mengurangi risiko cacat yang teridentifikasi dalam produksi
• Pengguna akhir akan mendapatkan keterampilan dan kepercayaan diri saat menggunakan
sistem baru sebelum ditayangkan.
Kekurangan/Keterbatasan Penerimaan
• e Anda tidak menguji semua fungsi atau fitur
mungkin • Kemajuan tes sulit diukur
• Pengguna mungkin mengkonfirmasi cara kerja sistem dan tidak melihat atau melaporkan
kerusakan
• Pengguna dapat fokus membandingkan sistem baru dengan sistem lama, daripada mencari
cacat.
Pengujian Fungsional
Pengujian Fungsional adalah teknik pengujian yang digunakan untuk menguji fitur/fungsionalitas
sistem atau perangkat lunak, harus mencakup semua skenario termasuk jalur kegagalan dan
kasus batas.

Teknik Pengujian Fungsional:

Ada dua teknik Pengujian Fungsional utama seperti yang ditunjukkan di bawah ini:

Teknik Pengujian Fungsional utama lainnya meliputi:

• Pengujian Unit
• Tes integrasi
• Pengujian Asap
• Pengujian Penerimaan Pengguna
• Pengujian Lokalisasi
• Pengujian Antarmuka
• Pengujian Kegunaan
• Pengujian Sistem
• Pengujian Regresi
• Pengujian Globalisasi

Keuntungan Pengujian Fungsional:


• Ini menghasilkan produk / perangkat lunak bebas cacat
• Ini memastikan bahwa pelanggan / pengguna akhir puas
• Ini memastikan semua persyaratan terpenuhi
• Ini memastikan berfungsinya semua fungsi aplikasi/perangkat lunak/produk.
Kekurangan/Keterbatasan Fungsional
• e Fungsional pengujian adalah proses di mana berbagai kesalahan logis dalam perangkat
lunak tidak terdeteksi dalam proses pengujian
• Tidak peduli bagaimana pengembang mengimplementasikan kode sumber yang
sebenarnya karena hanya itu
berfokus pada hasil dari kode sumber.
Pengujian Sistem
• Pengujian sistem adalah metode pengujian kotak hitam yang digunakan untuk mengevaluasi
sistem terintegrasi secara keseluruhan dan memastikannya memenuhi semua persyaratan
tertentu.
• Dalam kasus pengujian sistem, fungsionalitas produk diuji secara end-to-end dan biasanya
dilakukan oleh tim pengujian, bukan tim pengembangan.
• Pengujian sistem dilakukan sebelum mendorong produk perangkat lunak ke dalam produksi.
Jenis Pengujian Sistem:
Keuntungan Pengujian Sistem:
• Memverifikasi sistem terhadap persyaratan bisnis, fungsional dan teknis dari pengguna akhir.
• Ini membantu dalam mendapatkan bug maksimum sebelum pengujian penerimaan.
• Pengujian sistem meningkatkan tingkat kepercayaan tim pada produk sebelum produk
menjalani pengujian penerimaan.
Kekurangan/Keterbatasan Sistem
• e Hanya d cakupan aplikasi karena penguji tidak dapat menargetkan segmen kode
tertentu.
terbatas
• Uji kasus sulit untuk dirancang karena penguji tidak memiliki pengetahuan sebelumnya
spesifikasi dan kode.
• Beberapa input yang mungkin hanya akan diuji.
Pengujian Kinerja
Pengujian kinerja, teknik pengujian non-fungsional yang dilakukan untuk menentukan parameter
sistem dalam hal stabilitas di bawah berbagai beban kerja. Pengujian kinerja mengukur atribut
kualitas sistem, seperti keandalan dan penggunaan sumber daya.
Teknik Pengujian Kinerja:
• Load Testing - ini adalah bentuk pengujian yang paling sederhana, untuk memahami
perilaku sistem di bawah beban tertentu. Pengujian beban akan menghasilkan pengukuran
transaksi kritis bisnis yang penting dan beban pada database, aplikasi, server, dll.
• Stress Testing - ini dilakukan untuk mengetahui kapasitas batas atas sistem dan juga untuk
menentukan bagaimana kinerja sistem jika beban saat ini jauh di atas maksimum yang
diharapkan.
• Pengujian Rendam - pengujian rendam juga dikenal sebagai pengujian daya tahan,
dilakukan untuk menentukan parameter sistem di bawah beban yang diharapkan terus
menerus. Selama uji rendam, parameter seperti penggunaan memori dipantau untuk
mendeteksi kebocoran memori atau masalah kinerja lainnya.
• Spike Testing - pengujian spike dilakukan dengan meningkatkan jumlah pengguna secara
tiba-tiba dengan jumlah yang sangat besar dan mengukur kinerja sistem.
Proses Pengujian Kinerja:
Pengujian Keamanan
Pengujian keamanan adalah teknik pengujian untuk menentukan apakah suatu sistem informasi
melindungi data dan mempertahankan fungsionalitas sebagaimana dimaksud. Ini juga bertujuan
untuk memverifikasi 6 prinsip dasar seperti yang tercantum di bawah ini:

• Kerahasiaan
• Integritas
• Autentikasi
• Otorisasi
• Ketersediaan
• Non-Penolakan
Pengujian Keamanan - Teknik:
• Injeksi
• Otentikasi Rusak dan Manajemen Sesi
• Pembuatan Skrip Lintas Situs (XSS)
• Referensi Objek Langsung Tidak Aman
• Kesalahan Konfigurasi Keamanan
• Paparan Data Sensitif
• Kontrol Akses Level Fungsi Tidak Ada
• Pemalsuan Permintaan Lintas Situs (CSRF)
• Menggunakan Komponen dengan Kerentanan yang Diketahui
• Pengalihan dan Penerusan yang Tidak Divalidasi

Pengujian Regresi
Pengujian regresi adalah teknik pengujian kotak hitam yang terdiri dari menjalankan
kembali pengujian yang terpengaruh oleh perubahan kode. Tes ini harus dijalankan
sesering mungkin sepanjang siklus hidup pengembangan perangkat lunak.

Jenis Tes Regresi:

• Memerlukan pengetahuan tentang sistem dan bagaimana pengaruhnya terhadap fungsionalitas


yang ada.
• Tes dipilih berdasarkan area cacat yang sering terjadi
• Tes dipilih untuk menyertakan area yang telah mengalami perubahan kode berkali-kali
• Tes dipilih berdasarkan fitur kritis.

Langkah-langkah Pengujian Regresi:


Tes regresi adalah kasus otomatisasi yang ideal yang menghasilkan R eturn On I nvestment
(ROI) yang lebih baik.

• Pilih Tes untuk Regresi


• Pilih alat yang tepat dan otomatiskan Tes Regresi
• Verifikasi aplikasi dengan Checkpoints
• Kelola Tes/perbarui Regresi bila diperlukan
• Jadwalkan tes
• Integrasikan dengan build
• Analisis hasilnya

Metodologi air terjun


Dalam model air terjun, pengembangan perangkat lunak berlangsung melalui berbagai fase
seperti Analisis Kebutuhan, Desain, dll - secara berurutan.

Dalam model ini, fase berikutnya dimulai hanya ketika fase sebelumnya selesai.
Untuk apa Pendekatan Pengujian
l Fase pertama dalam mode air terjun adalah fase persyaratan di mana semua persyaratan
proyek sepenuhnya ditentukan sebelum memulai
pengujian. Selama fase ini, tim penguji melakukan brainstorming ruang lingkup pengujian, strategi
pengujian, dan menyusun rencana pengujian terperinci.

Hanya setelah desain perangkat lunak selesai, tim akan beralih ke pelaksanaan uji kasus untuk
memastikan bahwa perangkat lunak yang dikembangkan berfungsi seperti yang diharapkan.

Dalam metodologi ini, pengujian berlanjut ke fase berikutnya hanya ketika fase sebelumnya
selesai.
Keuntungan dan Kerugian Air Terjun
Keuntungan: ?
Model rekayasa perangkat lunak ini sangat sederhana untuk direncanakan dan dikelola. Oleh
karena itu, proyek-proyek di mana persyaratan didefinisikan dengan jelas dan dinyatakan
sebelumnya dapat dengan mudah diuji menggunakan model air terjun.

Kekurangan:

Dalam model air terjun, Anda dapat memulai dengan fase berikutnya hanya setelah fase
sebelumnya selesai. Oleh karena itu, model ini tidak dapat mengakomodasi kejadian yang tidak
direncanakan.

Metodologi Agile
Dalam metodologi tangkas, perangkat lunak dikembangkan dalam siklus yang cepat. Interaksi
antara pelanggan, pengembang, dan klien lebih ditekankan daripada proses dan alat. Metodologi
tangkas berfokus pada menanggapi perubahan daripada perencanaan yang luas.

Apa Pendekatan Pengujian untuk Metodologi Agile?

Pengujian tambahan digunakan dalam metode pengembangan tangkas dan karenanya, setiap rilis
proyek diuji secara menyeluruh. Ini memastikan bahwa setiap bug dalam sistem diperbaiki
sebelum rilis berikutnya

Kelebihan dan Kekurangan Agile


Metodologi?
Keuntungan:
Dimungkinkan untuk membuat perubahan dalam proyek kapan saja untuk memenuhi persyaratan.
Pengujian tambahan ini meminimalkan risiko.

Kekurangan:
Interaksi klien yang konstan berarti tekanan waktu tambahan pada semua pemangku kepentingan
termasuk klien itu sendiri, pengembangan perangkat lunak, dan tim pengujian

Metodologi Perangkat Lunak Mana yang


Harus Dipilih?
Ada banyak sekali metodologi pengujian yang tersedia yang dirancang untuk tujuan tertentu
dengan kelebihan dan kekurangannya sendiri. Pemilihan metodologi perangkat lunak tergantung
pada beberapa faktor seperti sifat proyek, apa persyaratan klien, jadwal proyek, dll. Dalam
beberapa kasus, pengujian dan pengembangan berjalan berdampingan sementara yang lain
mencakup pengujian selama fase selanjutnya ketika build sudah siap. .
Menyiapkan Metodologi Pengujian?
Metodologi pengujian tidak digunakan hanya untuk kepentingan pengujian kode tetapi juga
digunakan untuk tujuan lain.

• Penjadwalan: Penjadwalan adalah kunci untuk menerapkan metodologi pengujian dengan


sukses yang harus memenuhi persyaratan setiap anggota tim.
• Pendekatan Uji: Setelah Anda selesai dengan penjadwalan dan hasil proyek ditentukan
dengan baik, langkah selanjutnya adalah merumuskan pendekatan uji yang tepat.
• Pelaporan: Langkah ini akan menentukan keefektifan pendekatan pengujian dan perubahan
yang diperlukan untuk menyiapkan metodologi pengujian dengan sukses.

Вам также может понравиться