Monday, November 2, 2015


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.