Apakah pengujian non-fungsional (Pengujian karakteristik
produk perangkat lunak)?
Dalam pengujian non-fungsional karakteristik kualitas
komponen atau sistem diuji. Non-fungsional mengacu pada aspek perangkat lunak
yang mungkin tidak berhubungan dengan fungsi atau petunjuk tindakan tertentu
seperti skalabilitas atau keamanan. Misalnya. Berapa banyak orang bisa login
sekaligus? Pengujian non-fungsional juga dilakukan di semua tingkatan seperti
pengujian fungsional.
Non-fungsional pengujian meliputi:
pengujian fungsionalitas
uji reliabilitas
pengujian kegunaan
pengujian efisiensi
pengujian rawatan
pengujian portabilitas
tes awal
pengujian kepatuhan
pengujian dokumentasi
pengujian daya tahan
Load pengujian
pengujian kinerja
pengujian kompatibilitas
pengujian keamanan
pengujian skalabilitas
pengujian Volume
stress testing
pengujian pemulihan
Pengujian internasionalisasi dan pengujian Lokalisasi
Pengujian fungsi: pengujian Fungsi dilakukan untuk
memverifikasi bahwa aplikasi perangkat lunak melakukan dan fungsi dengan benar
sesuai dengan spesifikasi desain. Selama pengujian fungsi kita memeriksa fungsi
aplikasi inti, input teks, fungsi menu dan instalasi dan setup pada mesin
lokal, dll
Keandalan pengujian: Pengujian Keandalan adalah tentang
berolahraga aplikasi agar kegagalan yang ditemukan dan dihapus sebelum sistem
ini digunakan. Tujuan dari pengujian reliabilitas adalah untuk menentukan
keandalan produk, dan untuk menentukan apakah perangkat lunak memenuhi
persyaratan keandalan pelanggan.
Kegunaan pengujian: Dalam pengujian kegunaan dasarnya
penguji tes kemudahan yang user interface dapat digunakan. Ini tes bahwa apakah
aplikasi atau produk dibangun atau tidak user-friendly.
Pengujian kegunaan meliputi lima komponen berikut:
Learnability: Seberapa mudah bagi pengguna untuk
menyelesaikan tugas-tugas dasar pertama kalinya mereka menghadapi desain?
Efisiensi: Seberapa cepat dapat mengalami pengguna
menyelesaikan tugas?
Memorability: Bila pengguna kembali ke desain setelah periode
tidak menggunakannya, apakah pengguna mengingat cukup untuk menggunakannya
secara efektif waktu berikutnya, atau apakah pengguna harus mulai dari awal
lagi belajar segala sesuatu?
Kesalahan: Berapa banyak kesalahan yang membuat pengguna,
seberapa parah kesalahan ini dan bagaimana dengan mudah mereka dapat pulih dari
kesalahan?
Kepuasan: Berapa pengguna seperti menggunakan sistem?
Pengujian efisiensi: pengujian Efisiensi menguji jumlah kode
dan pengujian sumber daya yang diperlukan oleh program untuk melakukan fungsi
tertentu. Software Uji Efisiensi adalah jumlah kasus uji dieksekusi dibagi
dengan satuan waktu (umumnya per jam).
Pengujian rawatan: Pada dasarnya mendefinisikan bahwa betapa
mudahnya untuk mempertahankan sistem. Ini berarti bahwa betapa mudahnya untuk
menganalisis, mengubah dan menguji aplikasi atau produk.
Portabilitas pengujian: Hal ini mengacu pada proses
pengujian kemudahan yang komponen perangkat lunak komputer atau aplikasi dapat
dipindahkan dari satu lingkungan yang lain, misalnya bergerak dari setiap
aplikasi dari Windows 2000 ke Windows XP. Hal ini biasanya diukur dalam hal
jumlah maksimum upaya diijinkan. Hasil diukur dalam hal waktu yang dibutuhkan
untuk memindahkan perangkat lunak dan menyelesaikan dan dokumentasi update.
Tes awal: Hal ini mengacu pada validasi dokumen dan
spesifikasi yang uji kasus akan dirancang. Spesifikasi kebutuhan validasi
adalah pengujian awal.
Pengujian kepatuhan: Hal ini terkait dengan standar TI
diikuti oleh perusahaan dan merupakan pengujian yang dilakukan untuk menemukan
penyimpangan dari standar perusahaan yang ditentukan.
Pengujian Dokumentasi: Sesuai Dokumentasi IEEE menggambarkan
rencana, atau hasil, pengujian sistem atau komponen, Jenis termasuk uji kasus
spesifikasi, laporan pengujian kejadian, log tes, rencana uji, prosedur tes,
laporan pengujian. Oleh karena itu pengujian semua dokumen yang disebutkan di
atas dikenal sebagai pengujian dokumentasi.
Pengujian ketahanan: pengujian ketahanan melibatkan
pengujian sistem dengan beban yang signifikan diperpanjang selama periode waktu
yang signifikan, untuk menemukan bagaimana sistem berperilaku dalam penggunaan
berkelanjutan. Sebagai contoh, dalam pengujian perangkat lunak, sistem mungkin
berperilaku persis seperti yang diharapkan saat diuji untuk 1 jam tetapi ketika
sistem yang sama diuji selama 3 jam, masalah seperti kebocoran memori
menyebabkan sistem gagal atau berperilaku secara acak.
Load pengujian: Sebuah uji beban biasanya dilakukan untuk
memahami perilaku aplikasi di bawah beban yang diharapkan spesifik. Load
pengujian dilakukan untuk mengetahui perilaku sistem di bawah normal maupun
pada kondisi puncak. Ini membantu untuk mengidentifikasi kapasitas operasi
maksimum aplikasi serta adanya kemacetan dan menentukan unsur yang menyebabkan
degradasi. Misalnya Jika jumlah pengguna dalam berkerut maka berapa banyak CPU,
memori akan dikonsumsi, apa jaringan dan respon bandwidth yang waktu
Pengujian kinerja: Kinerja pengujian adalah pengujian yang
dilakukan, untuk menentukan seberapa cepat beberapa aspek dari sistem melakukan
di bawah beban kerja tertentu. Hal ini dapat melayani tujuan yang berbeda
seperti itu dapat menunjukkan bahwa sistem tersebut memenuhi kriteria kinerja.
Hal ini dapat membandingkan dua sistem untuk menemukan yang melakukan lebih
baik. Atau dapat mengukur apa bagian dari sistem atau beban kerja menyebabkan
sistem untuk melakukan buruk.
Pengujian kompatibilitas: testing Kompatibilitas pada
dasarnya adalah pengujian aplikasi atau produk dibangun dengan lingkungan komputasi.
Ini tes apakah aplikasi atau produk perangkat lunak yang dibangun kompatibel
dengan perangkat keras, sistem operasi, database atau perangkat lunak sistem
lain atau tidak.
Pengujian keamanan: Keamanan pengujian pada dasarnya adalah
untuk memeriksa bahwa apakah aplikasi atau produk dijamin atau tidak. Siapa pun
dapat datang besok dan hack sistem atau login aplikasi tanpa otorisasi apapun.
Ini adalah proses untuk menentukan bahwa sebuah sistem informasi melindungi
data dan mempertahankan fungsi sebagaimana dimaksud.
Pengujian skalabilitas: Ini adalah pengujian aplikasi
perangkat lunak untuk mengukur kemampuan untuk meningkatkan dalam hal apapun
kemampuan non-fungsional seperti beban yang didukung, jumlah transaksi, volume
data dll
Pengujian Volume: Volume pengujian mengacu pada pengujian
aplikasi perangkat lunak atau produk dengan jumlah tertentu dari data.
Misalnya, jika kita ingin Volume menguji aplikasi kita dengan ukuran database
tertentu, kita perlu memperluas database kami untuk ukuran itu dan kemudian
menguji kinerja aplikasi di atasnya.
Stres pengujian: Ini melibatkan pengujian melebihi kapasitas
operasional normal, sering ke titik putus, untuk mengamati hasil. Ini adalah
bentuk pengujian yang digunakan untuk menentukan stabilitas sistem tertentu.
Ini menempatkan penekanan lebih besar pada ketahanan, ketersediaan, dan
penanganan error di bawah beban berat, bukan pada apa yang akan dianggap
perilaku yang benar dalam keadaan normal. Tujuan dari tes tersebut mungkin
untuk memastikan perangkat lunak tidak crash dalam kondisi sumber daya yang
memadai komputasi (seperti memori atau ruang disk).
Pengujian pemulihan: pengujian Pemulihan ini dilakukan dalam
rangka untuk memeriksa seberapa cepat dan lebih baik aplikasi dapat pulih
setelah telah melalui semua jenis kecelakaan atau kegagalan hardware dll
pengujian Pemulihan adalah kegagalan paksa perangkat lunak dalam berbagai cara
untuk memverifikasi bahwa pemulihan dilakukan dengan benar. Misalnya, bila ada
aplikasi yang menerima data dari jaringan, cabut kabel penghubung. Setelah
beberapa waktu, pasang kabel kembali dan menganalisis kemampuan aplikasi untuk
terus menerima data dari titik di mana koneksi jaringan mendapat menghilang.
Restart sistem sementara browser memiliki sejumlah tertentu sesi dan memeriksa
apakah browser dapat memulihkan semua dari mereka atau tidak.
Pengujian internasionalisasi dan pengujian Localization:
Internasionalisasi adalah proses mendesain aplikasi software agar bisa
diadaptasi ke berbagai bahasa dan wilayah tanpa perubahan apapun. Sedangkan
Lokalisasi adalah proses mengadaptasi perangkat lunak internasionalisasi untuk
wilayah atau bahasa tertentu dengan menambahkan komponen tertentu lokal dan menerjemahkan
teks.