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 3 - Functional Test

Deep dive into functional testing techniques, black box vs white box testing, and understanding the differences between functional and non-functional testing approaches.

Luthfi A. Pratama

Luthfi A. Pratama

Software Engineer

2024-03-05
6 min read
Learning QA Day 3 - Functional Test

QA Test Technique - Functional Test

Tipe Testing

Functional Test VS Non-Functional Test

Functional Testing Non-Functional Testing
Object Of Testing Persyaratan Fungsional Wajib
Focus Area Business Objectives User Expectations
Level Components System
Stage Pengembangan Setelah pengujian fungsional
Manual/Automated both Automated
Example of types Unit, Komponen, Sistem, UI Performa, Load, Keamanan, Availability
Importance Wajib Tidak Wajib tapi dianjurkan

Functional Test

Pengujian yang mengevaluasi fungsi yang harus dijalankan oleh sistem. menguji perangkat lunak berdasarkan spesifikasi dengan memberikan input dan menguji hasil.

Tipe Fungsional Test

Tahapan Functional Test

  1. Identifikasi fungsi yang diharapkan dapat dilakukan oleh software
  2. Pembuatan data masukan berdasarkan spesifikasi
  3. Penentuan hasil berdasarkan spesifikasi
  4. Eksekusi
  5. Perbandingan data aktual vs ekspektasi

Tujuan dari jenis pengujian fungsional

  • evaluasi karakteristik fungsional dari kualitas sistem (kelengkapan, kebenaran, kelayakan)
  • evaluasi karakteristik fungsional dari kualitas sistem (keandalan, produktifitas, keamanan, kompatibilitas, dan kegunaan)
  • evaluasi kebenaran dan kelengkapan struktur atau arsitektur komponen atau sistem serta kesesuaian dengan spesifikasi
  • evaluasi dampak peruabahn yang terjadi

Dynamic Testing

Jenis pengujian yang dilakukan dengan menjalankan software yang sedang diuji

Black Box Testing

Testing dilakukan dengan mempertimbangkan persyaratan tetapi tidak mengetahui kode internal didalamnya. pengujian didasarkan pada persyaratan dan fungsionalitas.

Tantangan dalam blackbox testing

  • Exhaustive Testing: Pengujian semua kombinasi tidak memungkinkan
  • Accidental Coincidence: Ada kemungkinan output benar walaupun input salah (false positive)

Keuntungan

  • Cocok untuk tester yang tidak memiliki basic pemrograman
  • Dapat melakukan test dari sudut pandang pengguna
  • Cepat dan sederhana

Kekurangan

  • Kemungkinan terjadi bug yang aman dari pandangan user tetapi bermasalah di "belakang"
  • Berpotensi ada yang terlewat atau user kurang teliti
  • Tester perlu mengetahui proses bisnis, pengetahuan produk, dan user flow dengan cukup mendalam

Teknik Blackbox Testing

  1. Equivalence Partitioning
  2. Boundary Value Analysis
  3. Cause-Effect Graphing Testing
  4. All-pair Testing
  5. Fuzz Testing
  6. State Testing (UI Testing) dsb.

White Box Testing

Testing yang didasarkan pada syarat yang juga mempertimbangkan pengetahuan mengenai kode internal yang dijalankan

Keuntungan

  • Lebih detail
  • Lebih mudah diautomasi
  • Lebih cepat mengetahui bug karena ditest sebelum ada GUI dan tidak tergantung adanya GUI

Kekurangan

  • Partial Source code testing
  • Berpotensi mengulang tes yang sama antara tester dan developer
  • Tidak semua kemungkinan flow input dan output dijalankan

Topics

Quality Assurance & Testing

Related Articles

Learning QA Day 4 - Test Planning

Understanding test planning activities including objectives, resources, and processes for executing testing projects with proper entry and exit criteria.

Learning QA Day 2 - Test Level & Test Type

Exploring the five core test activities and tasks, understanding different test levels, types, and the testware tools used throughout the testing lifecycle.

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.