Sunday, March 5, 2017

Jenis-jenis Testing yang Dilakukan Tester / Software QA

Di dalam perusahaan IT/Website House yang memproduksi software/website, pastinya memiliki seorang Software QA/Software tester yang bertugas melakukan testing software / website, Seorang Quality Assurance/Tester  mempersiapkan kasus uji untuk setiap use case dan scenarionya untuk menyelesaikan aktivitas persyaratan sistem. Banyak kasus uji yang mewakili situasi baik yang normal maupun kejadian tertentu yang harus disiapkan untuk masing – masing scenario.

Baca Juga: Apa itu Software QA / Tester?

Berikut Jenis-Jenis Testing (Test type) seorang Software Quality Assurance/ Software Tester:

Performance Testing

Performance test adalah integration dan usability test yang menentukan apakah system or subsystem dapat memenuhi kriteria kinerja berbasis waktu seperti response time atau throughput. Response time menentukan batas waktu maksimum yang diijinkan dari respon software untuk query dan update. Throughput menentukan jumlah minimum query dan transaksi yang harus diproses per menit atau per jam.

Baca Juga: Pengertian Performance Testing

System Testing

System test adalah integration test dari behavior seluruh sistem atau independent subsystem. System testing biasanya dilakukan pertama kali oleh pengembang atau personil pengujian untuk memastikan bahwa keseluruhan sistem tidak berfungsi dan bahwa sistem telah memenuhi persyaratan pengguna (user requirement). System testing biasanya dilakukan di akhir setiap iterasi untuk mengidentifikasi isu – isu penting, seperti masalah performance yang perlu ditangani di iterasi berikutnya.System testing dapat dilakukan sesering mungkin

Baca Juga: Pengertian System Testing

Unit Testing

Unit testing adalah proses metode pengujian individual, class, atau komponen sebelum mereka terintegrasi dengan perangkat lunak lainnya. Tujuan dari unit testing adalah untuk mengidentifikasi dan memperbaiki kesalahan sebanyak mungkin sebelum modul – modul digabungkan menjadi unit perangkat lunak yang lebih besar, seperti program, class dan subsistem. Kesalahan menjadi lebih sulit dan mahal untuk ditemukan dan diperbaiki ketika banyak unit telah digabungkan.

Unit testing memerlukan implementasi dari driver dan/atau stub. Stub adalah class atau method dummy yang dapat dipanggil namun biasanya tidak melakukan apapun kecuali mengembalikan tipe yang diperlukan. Modul driver adalah program yang menjalankan method atau fungsi dari class yang akan ditest. Berikut adalah langkah yang dilakukan :
  • Menentukan nilai dari parameter input 
  • Memanggil unit yang dites, melewatkannya dengan parameter input 
  • Menerima parameter kembalian dari unit yang dites dan mencetaknya, menampilkannya, atau mengetes hasilnya terhadap hasil yang diharapkan.

Integration Testing

Integration test mengevaluasi behavior dari kelompok method atau class. Tujuan dari integration test adalah untuk mengidentifikasi kesalahan yang tidak dapat dideteksi oleh unit testing. Kesalahan tersebut mungkin disebabkan oleh beberapa masalah, termasuk :
  • Interface incompatibility, misalnya sebuah method melewatkan parameter dengan tipe data yang salah ke method lainnya
  • Parameter values, misalnya sebuah method mengembalikan nilai yang tidak terduga seperti nomor negatif untuk harga
  • Run-time exceptions, misalnya method menyebabkan kesalahan seperti ―out of memory‖ atau ― file already in use‖ karena ada konflik kebutuhan sumber daya
  • Unexpected state interactions, misalnya state dari dua atau lebih objek yang berinteraksi menyebabkan kesalahan yang kompleks seperti ketika method class Order menjalankan satu kesalahan dari semua kemungkinan state objek Customer.
Beberapa masalah di atas merupakan kesalahan paling umum yang sering ditemui dalam integration testing, tetapi sebenarnya masih banyak masalah lainnya yang dapat menjadi penyebab kesalahan (error).

Usability Testing

Usability test adalah test untuk menentukan apakah method, class, subsistem, atau sistem telah memenuhi persyaratan pengguna. Oleh karena banyaknya tipe persyaratan sistem baik yang fungsional maupun non-fungsional, maka banyak tipe dari usability test yang harus dilakukan di waktu yang berbeda. Umumnya usability test mengevaluasi persyaratan fungsional dan kualitas dari user interface. User berinteraksi dengan sistem untuk menentukan apakah fungsi telah seperti yang diharapkan dan apakah user interface membuat sistem dapat mudah digunakan. Pengujian ini sering dilakukan untuk mendapatkan feedback yang cepat dalam meningkatkan interface dan mengkoreksi kesalahan dalam komponen perangkat lunak.

Baca Juga: Pengertian Usability Testing

Smoke Testing

Smoke Test adalah system test yang biasanya dilakukan setiap hari atau beberapa kali per minggu. Build and smoke test sangat penting karena menyediakan feedback yang cepat dalam masalah yang signifikan.

Baca Juga: Pengertian Smoke Testing

Stress Testing

Stress Testing adalah pengujian yang biasanya dilakukan dalam membuat sebuah website, dimana stress testing dilakukan untuk mengetahui sekuat apa server website kita menampung visitor dalam website tersebut, dengan cara melakukan hit dummy ke website menggunakan tools.

Baca Juga: Pengertian Stress Testing

User Acceptence Test (UAT)

User acceptance test digunakan untuk menentukan apakah sistem yang dikembangkan telah memenuhi kebutuhan pengguna. Dalam beberapa proyek, acceptance testing dilakukan pada putaran terakhir proses pengujian yaitu sebelum sistem diserahkan kepada user.

Baca Juga: Pengertian dan Contoh UAT


EmoticonEmoticon