Logo
HOMEABOUTPROJECTSBLOGCONTACT

Luthfi A. Pratama

Enterprise integration specialist building scalable, mission-critical solutions for modern businesses.

LINKS

  • About
  • Projects
  • Blog
  • Contact

CONNECT

GitHubLinkedInEmail

© 2026 Luthfi A. Pratama. All rights reserved.

Designed and built with passion.

Back to all articles
Quality Assurance & Testing

Learning QA Day 1 - Quality Assurance Fundamental

A comprehensive guide to Quality Assurance fundamentals covering testing principles, QA vs QC, test objectives, and the seven core testing principles.

Luthfi A. Pratama

Luthfi A. Pratama

Software Engineer

2024-03-02
5 min read
Learning QA Day 1 - Quality Assurance Fundamental

Quality Assurance Fundamental

Apa itu testing?

Testing adalah proses penting dalam pengembangan perangkat lunak yang bertujuan untuk mengidentifikasi kesalahan, cacat, atau kekurangan dalam sebuah sistem. Melalui pengujian, tim pengembang dapat memastikan bahwa perangkat lunak berfungsi sesuai dengan kebutuhan, menjaga kualitas, serta meningkatkan keandalan sistem secara keseluruhan. Dengan beragam metode dan pendekatan yang tersedia, pengujian memainkan peran kunci dalam memastikan bahwa produk akhir dapat memberikan nilai tambah kepada pengguna dan pemangku kepentingan lainnya.

Perbedaan QA & QC

Quality Control (QC)

QC adalah teknik yang Product Oriented. yaitu lebih berfokus pada apakah aplikasi sesuai dengan requirement, bebas dari bug, tidak memiliki cacat, serta sesuai dengan spesifikasi yang ditentukan.

Quality Assurance (QA)

QA adalah teknik yang Process Oriented. yaitu lebih berfokus pada bagaimana software itu bisa digunakan. apakah dalam proses pengembangannya telah menerapkan plan yang sesuai.

Test Objectives

  • Prevent Defects

Mencegah terjadinya defect yang mungkin akan terjadi

  • Find failure and defects

Menemukan dan mengidentifikasi defect atau failure seawal mungkin

  • Share information to stakeholders

Menyediakan informasi yang cukup untuk membantu stackholder menentukan pilihan

  • Evaluate Work

Bahan evaluasi apakah produk sesuai requirement, user stories, atau hal-hal lainnya

  • Verify requirement

Memastikan produk sesuai dengan requirement yang telah ditentukan

  • Validate test object

Memastikan test yang akan dilakukan sudah sesuai dengan requirement

  • Build confidence

Memastikan aplikasi yang telah dibuat itu meyakinkan untuk di release atau tidak

  • Reduce risk

Menganalisis resiko sehingga dapat menanggulangi kemungkinan resiko yang besar

Perbedaan Debugging VS Testing

Testing Debugging
Objective menemukan bug atau error memperbaiki error selama proses testing
Performed By Tester atau Developer Developer
Automation Manual/Otomatis Manual
Programming Knowledge kebanyakan tidak memerlukan kemampuan programming Membutuhkan kemampuan programming yang sesuai

7 Testing Principles

  • Testing show presence of defect

testing dapat menunjukan adanya cacat, tidak dapat membuktikan tidak adanya cacat. testing membantu dalam menemukan cacat yang belum ditemukan

  • early testing

mulai testing sesegera mungkin. menemukan kerusakan sejak dini dapat menghemat banyak uang daripada menemukan nanti

  • testing - context dependent

testing bergantung

  • Exhautive testing is impossible

Mustahil menguji semua kemungkinan kombinasi input data dan skenario. cara pengujian yang lebih cerdas harus diadopsi

  • Defect Clustering

Distribusi bug yang sama di seluruh modul tidak memungkinkan. cacat dapat dikelompokkan dalam potongan kecil kode/modul

  • Pesticide paradox

Mengeksekusi kasus pengujian yang sama berulang kali tidak akan membantu mengidentifikasi lebih banyak bug. tinjau secara teratur dan modifikasi jika diperlukan perubahan

  • absence-of-error fallacy

menemukan dan memperbaiki banyak bug tidak akan membantu apalabila gagal memenuhi kebutuhan pengguna, itu sama saja tidak berguna

Topics

Quality Assurance & TestingSoftware Engineering

Related Articles

Deep Work: Catatan tentang Fokus di Era Distraksi

Refleksi tentang buku Cal Newport yang membahas kenapa kemampuan fokus mendalam jadi langka dan valuable - perspektif developer yang struggle dengan constant interruptions.

Hooked: Catatan tentang Habit-Forming Products

Refleksi personal tentang buku Nir Eyal yang membedah mekanisme produk yang bikin kecanduan - perspektif developer yang bikin dan juga victim dari habit loops.

The Pragmatic Programmer: Catatan tentang Craft Software Engineering

Refleksi personal tentang buku klasik Andrew Hunt dan David Thomas - pelajaran timeless tentang menjadi better developer beyond syntax dan framework.