thursday'snotes
this site the web

Software Testing (Part 1: Software Testing Fundamentals)

Software Testing :

Salah satu tahap terpenting dari pembuatan software adalah software testing. Di tahap ini software diuji dan dipastikan aman sebelum diserahkan ke user.

Berikut ini adalah hal-hal yang mendasari software testing:

·         Kenapa testing dianggap penting?
·         Apa itu testing?
·         Prinsip umum testing
·         Dasar-dasar proses testing
·         Psikologi testing

Kenapa testing dianggap penting?
1.      Karena kegagalan testing dapat menyebabkan kerugian uang, waktu, reputasi bisnis, luka hingga kematian.
2.      Untuk menjaga software tetap terkontrol.
3.      Resiko kegagalansoftware berbanding lurus dengan kerumitan software tersebut.
4.      Testing berpengaruh terhadap kualitas software

Apa yang dimaksud dengan testing dan apa yang dilakukan selama testing?
  1. Testing adalah eksplorasi sistematik sebuah komponen sistem dengan tujuan utama menemukan dan melaporkan cacat. Sementara debugging adalah proses dimana developer mengidentifikasi penyebab bug dan melakukan koreksi.
  2. Static testing adalah masa yang digunakan untuk menguji kode yang belum diaplikasikan contohnya dengan menyingkirkan ambigu dan error dari specification documentation. Sementara dynamic testing adalah melakukan pengujian terhadap program dengan beberapa test data.
  3. Testing adalah proses dimana kita mendefinisikan sebuah proses tes untuk memastikan  bahwa kita tidak melewatkan langkah penting dan sesuai urutan.
  4. Testing adalah sekumpulan teknik. Teknik pertama adalah test yang bertujuan menemukan cacat dan kedua adalah meningkatkan kualitas produk.

Prinsip umum testing
  1. Testing menunjukan kehadiran bug
  2. Testing berkali-kali tidak memungkinkan
  3. Testing sebaiknya dilakukan sejak awal
  4. Pengelompokan cacat
Berikut ini adalah beberapa kategori cacat:
    • System complexity
    • Volatile code
    • The effect upon change
    • Development staff experience
    • Development staff inexperience
Pengaplikasian prinsip pareto dalam software testing adalah rata-rata 80% problem ditemukan sekitar 20% dari modul.
  1. Gunakan paradoks pestida (melakukan test yang berbeda untuk menemukan cacat baru)

Dasar – Dasar Proses Tes
  1. Planning and control
  2. Analysis and design
  3. Implementation and execution
  4. Evaluating exit criteria and reporting
  5. Test closure activities


Kegiatan utama pada proses Planning & Control
  1. Menentukan jangkauan  dan tujuan  serta menentukan resiko yang timbul
  2. Menentukan teknik, item yan akan dites, coverage, dan team yang terlibat dalam tes
  3. Menentukan detail kebutuhan selama testing
  4. Mengimplementasikan strategi test
  5. Menjadwalkan tes analysis dan desain
  6. Menjadwalkan implementasi test
  7. Menentukan detail akhir test

Kegiatan utama pada proses tes analysis dan desain
1.      Mereview requirement, desain arsitektur, interface, dan lain-lain
2.      Menganalisis test item, spesifikasi, perilaku dan struktur untuk mengidentifikasi kondisi test dan test data.
3.      Mendesain test
4.      Menentukan requirement dengan system dapat diuji
5.      Mendetailkan bagaiamana kondisi test seharusnya

Kegiatan utama implementasi test dan eksekusi
Yang harus diingat terlebih dahulu :test dijalankan setelah semua problem dipastikan telah selesai dan menjalankan confirmation testing dan regression testing sebelumnya. Tujuan utamanya adalah membandingkan hasil tes saat ini dengan yang diharapkan.
1.      Membangun dan memprioritaskan test case , menyiapkan test data, dan menulis prosedur tes.
2.      Mengumpulkan test case
3.      Mengecek test environment telah siap
4.      Menyimpan log activities dari testing (pass/fail, version software, tools, dan testware)
5.      Membandingkan hasil test dengan yang diharapkan
6.      Menyiapkan ketidakcocokan sebagai insiden dengan detail selengkap mungkin
7.      Mengulangi test activities ketikan terjadi perubahan

Kegiatan utama Exit Criteria dan Reporting
  1. Mengecek exit criteria sebelumnya  (mengubah exit criteria atau menjalankan test sekali lagi)
  2. Menentukan apakah dibutuhkan sekali lagi test
  3. Menuliskan hasil testing untuk sponsor bisnis

Kegiatan utama test closure activities
  1. Memastikan dokumentasi telah tersusun, menyelesaikan insiden, mendokumentasikan yang telah diaccept
  2. Menutup test enviroment, infrastrukturm dan alat yang digunakan
  3. Melewatkan ke tim maintenance
  4. Menuliskan pelajaran yang didapatkan dari testing project

* Kapan suatu tes dinyatakan selesai? ketika para sponsor telah cukup menemukan informasi untuk keputusan merilisnya.

Psikologi Testing
Testing akan efektif bila dijalankan oleh bukan penciptanya. Untuk menjaga kemandiriannya dibutuhkan pencipta kode, anggota team development, anggota diluar team, dan konsultan testing

 
 

Disclaimer

I do not claim any of these images as my own unless otherwise stated

The views and opinions expressed on this blog are 100% mine. If I claim or appear to be an expert on a certain topic or product or service area, I will only endorse products or services that I believe, based on my expertise, are worthy of such endorsement. Any product claim, statistic, quote or other representation about a product or service should be verified with the manufacturer or provide

About Thursday's Notes

This blog is a personal blog written and edited by me, and does not reflect the views of either employers and/or clients. This blog does not accept any form of cash advertising, sponsorship, or paid topic insertions.