SlideShare a Scribd company logo
TEKNIK PENGUJIANTEKNIK PENGUJIAN
PERANGKAT LUNAKPERANGKAT LUNAK
Latar BelakangLatar Belakang
 Pengujian P/L adalah elemen kritis dariPengujian P/L adalah elemen kritis dari
jaminan kualitas P/L dan merupakanjaminan kualitas P/L dan merupakan
review puncak terhadap spesifikasi,review puncak terhadap spesifikasi,
desain dan pembuatan program.desain dan pembuatan program.
 Pengujian P/L menghabiskan upaya 30-Pengujian P/L menghabiskan upaya 30-
40% dari total pekerjaan proyek.40% dari total pekerjaan proyek.
 Untuk proyek yang membahayakanUntuk proyek yang membahayakan
nyawa manusia, biaya pengujian bisa 3-5nyawa manusia, biaya pengujian bisa 3-5
X proyek biasa.X proyek biasa.
Tujuan PengujianTujuan Pengujian
1.1. Menjalankan program untuk menemukanMenjalankan program untuk menemukan
error.error.
2.2. Test case yang bagus adalah yangTest case yang bagus adalah yang
memiliki kemungkinan terbesar untukmemiliki kemungkinan terbesar untuk
menemukan error yang tersembunyi.menemukan error yang tersembunyi.
3.3. Pengujian yang sukses adalah yangPengujian yang sukses adalah yang
berhasil menemukan error yangberhasil menemukan error yang
tersembunyi.tersembunyi.
Prinsip PengujianPrinsip Pengujian
 Harus bisa dilacak hingga sampai keHarus bisa dilacak hingga sampai ke
kebutuhan customer.kebutuhan customer.
 Harus direncanakan sejak model dibuat.Harus direncanakan sejak model dibuat.
 Prinsip Pareto: 80% error uncovered.Prinsip Pareto: 80% error uncovered.
 Dari lingkup kecil menuju yang besar.Dari lingkup kecil menuju yang besar.
 Tidak bisa semua kemungkinan diuji.Tidak bisa semua kemungkinan diuji.
 Dilakukan oleh pihak ketiga yangDilakukan oleh pihak ketiga yang
independen.independen.
TestablilityTestablility
 Kemudahan untuk diuji.Kemudahan untuk diuji.
 Karakteristiknya:Karakteristiknya:
– Operability: mudah digunakan.Operability: mudah digunakan.
– Observability: mudah diamati.Observability: mudah diamati.
– Controlability: mudah dikendalikan.Controlability: mudah dikendalikan.
– Decomposability: mudah diuraikan.Decomposability: mudah diuraikan.
– Simplicity: lingkup kecil, semakin mudah diuji.Simplicity: lingkup kecil, semakin mudah diuji.
– Stability: jarang berubah.Stability: jarang berubah.
– Understandability: mudah dipahami.Understandability: mudah dipahami.
Desain Kasus PengujianDesain Kasus Pengujian
 Black box testingBlack box testing
– Memastikan fungsional P/L berjalan.Memastikan fungsional P/L berjalan.
– Kesesuaian input dengan output.Kesesuaian input dengan output.
– Tidak memperhatikan proses logic internal.Tidak memperhatikan proses logic internal.
 White box testingWhite box testing
– Pengamatan detail prosedur.Pengamatan detail prosedur.
– Mengamati sampai level percabangan kondisiMengamati sampai level percabangan kondisi
dan perulangan.dan perulangan.
White Box TestingWhite Box Testing
 Metode: basis path testing.Metode: basis path testing.
 Memakai notasi flow graph.Memakai notasi flow graph.
Kompleksitas CyclomaticKompleksitas Cyclomatic
 Menunjukkan jumlah skenario pengujian yang harusMenunjukkan jumlah skenario pengujian yang harus
dilakukan untuk menjamin cakupan seluruh program.dilakukan untuk menjamin cakupan seluruh program.
Contoh White Box TestingContoh White Box Testing
 Lihat bukuLihat buku
halaman 449halaman 449
– 452.– 452.
Black Box Testing – Graph BasedBlack Box Testing – Graph Based
Black Box Testing – EquivalenceBlack Box Testing – Equivalence
PartitioningPartitioning
 Contoh: Input NPM dalam SIAMIKContoh: Input NPM dalam SIAMIK
– Jika dikosongi?Jika dikosongi?
– Jika diisi dengan format yang salah?Jika diisi dengan format yang salah?
– Jika diisi dengan NPM yang benar?Jika diisi dengan NPM yang benar?
Black Box Testing – Analisa NilaiBlack Box Testing – Analisa Nilai
BatasBatas
1.1. Menguji untuk input di sekitar batas atasMenguji untuk input di sekitar batas atas
maupun bawah sebuah range nilai yangmaupun bawah sebuah range nilai yang
valid.valid.
2.2. Menguji nilai maksimal dan minimal.Menguji nilai maksimal dan minimal.
3.3. Menerapkan (1 & 2) untuk output.Menerapkan (1 & 2) untuk output.
4.4. Menguji batas struktur data yang dipakai.Menguji batas struktur data yang dipakai.
Misal ukuran array.Misal ukuran array.
Black Box Testing – PerbandinganBlack Box Testing – Perbandingan
 Spesifikasi kebutuhan yang samaSpesifikasi kebutuhan yang sama
dimungkinkan menghasilkan aplikasi/dimungkinkan menghasilkan aplikasi/
perangkat lunak yang berbeda.perangkat lunak yang berbeda.
 Skenario pengujian pada aplikasi yangSkenario pengujian pada aplikasi yang
demikian bisa digunakan untuk skenariodemikian bisa digunakan untuk skenario
pengujian aplikasi serupa yang lain.pengujian aplikasi serupa yang lain.
Skenario Pengujian KhususSkenario Pengujian Khusus
 Pengujian GUI.Pengujian GUI.
 Pengujian arsitektur client/ server.Pengujian arsitektur client/ server.
 Pengujian dokumentasi dan fasilitasPengujian dokumentasi dan fasilitas
bantuan.bantuan.
 Pengujian sistem waktu nyata.Pengujian sistem waktu nyata.
CHAPTER 18CHAPTER 18
STRATEGI PENGUJIANSTRATEGI PENGUJIAN
P/LP/L
STRATEGI PENGUJIAN P/LSTRATEGI PENGUJIAN P/L
 Membahas langkah-langkah yang harusMembahas langkah-langkah yang harus
dikerjakan sebagai bagian dari pengujian.dikerjakan sebagai bagian dari pengujian.
 Kapan dilaksanakan? Berapa usaha,Kapan dilaksanakan? Berapa usaha,
waktu dan sumber daya yang digunakan?waktu dan sumber daya yang digunakan?
 Meliputi: perencanaan, desain test case,Meliputi: perencanaan, desain test case,
pelaksanaan, koleksi data dan evaluasi.pelaksanaan, koleksi data dan evaluasi.
Kaidah Umum PengujianKaidah Umum Pengujian
 Dimulai dari pengujian tingkat komponen menujuDimulai dari pengujian tingkat komponen menuju
integrasi.integrasi.
 Titik yang berbeda dimungkinkan memakaiTitik yang berbeda dimungkinkan memakai
teknik pengujian yang berbeda.teknik pengujian yang berbeda.
 Pengujian dilakukan oleh developer dan (untukPengujian dilakukan oleh developer dan (untuk
proyek yang besar) tim independen.proyek yang besar) tim independen.
 Testing dan debugging adalah berbeda. NamunTesting dan debugging adalah berbeda. Namun
debugging pasti berkaitan dengan strategidebugging pasti berkaitan dengan strategi
testing apapun.testing apapun.
Strategi PengujianStrategi Pengujian
 Dimulai dari unit testing terhadap sourceDimulai dari unit testing terhadap source
code hingga system testing terhadapcode hingga system testing terhadap
spesifikasi kebutuhan.spesifikasi kebutuhan.
Langkah PengujianLangkah Pengujian
Unit TestingUnit Testing
Integration TestingIntegration Testing
 Top – down integrationTop – down integration
Integration TestingIntegration Testing
 Bottom – up integrationBottom – up integration
Integration TestingIntegration Testing
 Regression testing: dilakukan pengujianRegression testing: dilakukan pengujian
setiap kali ada modul baru yangsetiap kali ada modul baru yang
diintegrasikan atau ada modul yangdiintegrasikan atau ada modul yang
berubah.berubah.
 Smoke testing: test daily, untuk proyekSmoke testing: test daily, untuk proyek
jenis kritis-waktu.jenis kritis-waktu.
Validation TestingValidation Testing
 Disebut sukses jika fungsi P/L dapatDisebut sukses jika fungsi P/L dapat
diterima oleh customer (berdasarkanditerima oleh customer (berdasarkan
dokumen SKPL).dokumen SKPL).
 Alpha test: dilakukan di tempat developerAlpha test: dilakukan di tempat developer
oleh customer pada lingkungan yangoleh customer pada lingkungan yang
terkendali.terkendali.
 Beta test: dilakukan di tempat customerBeta test: dilakukan di tempat customer
tanpa melibatkan developer padatanpa melibatkan developer pada
lingkungan yang tak terkendali.lingkungan yang tak terkendali.
System TestingSystem Testing
 Meguji sistem berbasis komputer secaraMeguji sistem berbasis komputer secara
menyeluruh, termasuk juga hubungannyamenyeluruh, termasuk juga hubungannya
dengan sistem yang lain.dengan sistem yang lain.
 Diantaranya:Diantaranya:
– Recovery testing, jika system failure.Recovery testing, jika system failure.
– Security testing, jika terjadi serangan.Security testing, jika terjadi serangan.
– Stress testing, terhadap jumlah, frekuensi dan volumeStress testing, terhadap jumlah, frekuensi dan volume
pekerjaan.pekerjaan.
– Performance testing, untuk mengukur pemakaianPerformance testing, untuk mengukur pemakaian
sumber daya.sumber daya.
DebuggingDebugging
 Memperbaiki error yang ditemukan padaMemperbaiki error yang ditemukan pada
saat testing (yang sukses).saat testing (yang sukses).
 Kaidah dasar sebelum debug:Kaidah dasar sebelum debug:
– Apakah penyebab bug dihasilkan kembaliApakah penyebab bug dihasilkan kembali
oleh bagian program yang lain?oleh bagian program yang lain?
– Apakah bug selanjutnya yang mungkinApakah bug selanjutnya yang mungkin
muncul jika bug diperbaiki?muncul jika bug diperbaiki?
– Apa yang bisa dilakukan untuk mencegah bugApa yang bisa dilakukan untuk mencegah bug
terjadi untuk pertama kalinya?terjadi untuk pertama kalinya?

More Related Content

What's hot

Kerangka kerja interaksi
Kerangka kerja interaksiKerangka kerja interaksi
Kerangka kerja interaksiAriev Kusuma
 
SRS iDoctor
SRS iDoctorSRS iDoctor
5 penjadwalan aplod
5 penjadwalan aplod5 penjadwalan aplod
5 penjadwalan aplod
Setia Juli Irzal Ismail
 
Materi application layer
Materi application layerMateri application layer
Materi application layer
Ian March
 
Laporan analisis sistem informasi
Laporan analisis sistem informasiLaporan analisis sistem informasi
Laporan analisis sistem informasi
POLITEKNIK GORONTALO
 
SLIDE KE:5 NFA
SLIDE KE:5 NFASLIDE KE:5 NFA
SLIDE KE:5 NFA
Rahmatdi Black
 
Ketahanan nasional di bidang politik luthfatul amaliya
Ketahanan nasional di bidang politik   luthfatul amaliyaKetahanan nasional di bidang politik   luthfatul amaliya
Ketahanan nasional di bidang politik luthfatul amaliyanatal kristiono
 
Laporan Praktek Jaringan Komputer "Subnetting"
Laporan Praktek Jaringan Komputer "Subnetting"Laporan Praktek Jaringan Komputer "Subnetting"
Laporan Praktek Jaringan Komputer "Subnetting"Riyo D'lasphaga
 
Strategi pengujian perangkat lunak
Strategi pengujian perangkat lunakStrategi pengujian perangkat lunak
Strategi pengujian perangkat lunak
Ardha Herdianto
 
Tugas 5 - MPPL - Project Charter
Tugas  5 - MPPL -  Project CharterTugas  5 - MPPL -  Project Charter
Tugas 5 - MPPL - Project Charter
Raden Kusuma
 
PPT ALGORITMA KRIPTOGRAFI
PPT ALGORITMA KRIPTOGRAFIPPT ALGORITMA KRIPTOGRAFI
PPT ALGORITMA KRIPTOGRAFI
ripki al
 
Database with SQL Server
Database with SQL ServerDatabase with SQL Server
Database with SQL Server
eddie Ismantoe
 
Makalah Web Programming 1
Makalah Web Programming 1Makalah Web Programming 1
Makalah Web Programming 1
Dwi Mardianti
 
Ansis 8 - Use Case Diagram
Ansis 8 - Use Case DiagramAnsis 8 - Use Case Diagram
Ansis 8 - Use Case Diagram
Lia Rusdyana Dewi
 
Togaf
TogafTogaf
Resume software measurement
Resume software measurementResume software measurement
Resume software measurementErwan Nur Arief
 

What's hot (20)

Kerangka kerja interaksi
Kerangka kerja interaksiKerangka kerja interaksi
Kerangka kerja interaksi
 
SRS iDoctor
SRS iDoctorSRS iDoctor
SRS iDoctor
 
5 penjadwalan aplod
5 penjadwalan aplod5 penjadwalan aplod
5 penjadwalan aplod
 
Prinsip User Interface Design
Prinsip User Interface DesignPrinsip User Interface Design
Prinsip User Interface Design
 
Penjaminan mutu
Penjaminan mutuPenjaminan mutu
Penjaminan mutu
 
Materi application layer
Materi application layerMateri application layer
Materi application layer
 
Laporan analisis sistem informasi
Laporan analisis sistem informasiLaporan analisis sistem informasi
Laporan analisis sistem informasi
 
SLIDE KE:5 NFA
SLIDE KE:5 NFASLIDE KE:5 NFA
SLIDE KE:5 NFA
 
Ketahanan nasional di bidang politik luthfatul amaliya
Ketahanan nasional di bidang politik   luthfatul amaliyaKetahanan nasional di bidang politik   luthfatul amaliya
Ketahanan nasional di bidang politik luthfatul amaliya
 
Laporan Praktek Jaringan Komputer "Subnetting"
Laporan Praktek Jaringan Komputer "Subnetting"Laporan Praktek Jaringan Komputer "Subnetting"
Laporan Praktek Jaringan Komputer "Subnetting"
 
Strategi pengujian perangkat lunak
Strategi pengujian perangkat lunakStrategi pengujian perangkat lunak
Strategi pengujian perangkat lunak
 
Tugas 5 - MPPL - Project Charter
Tugas  5 - MPPL -  Project CharterTugas  5 - MPPL -  Project Charter
Tugas 5 - MPPL - Project Charter
 
PPT ALGORITMA KRIPTOGRAFI
PPT ALGORITMA KRIPTOGRAFIPPT ALGORITMA KRIPTOGRAFI
PPT ALGORITMA KRIPTOGRAFI
 
Laporan Aplikasi Website
Laporan Aplikasi WebsiteLaporan Aplikasi Website
Laporan Aplikasi Website
 
Database with SQL Server
Database with SQL ServerDatabase with SQL Server
Database with SQL Server
 
Makalah Web Programming 1
Makalah Web Programming 1Makalah Web Programming 1
Makalah Web Programming 1
 
Software Requirements
Software RequirementsSoftware Requirements
Software Requirements
 
Ansis 8 - Use Case Diagram
Ansis 8 - Use Case DiagramAnsis 8 - Use Case Diagram
Ansis 8 - Use Case Diagram
 
Togaf
TogafTogaf
Togaf
 
Resume software measurement
Resume software measurementResume software measurement
Resume software measurement
 

Similar to Teknik Pengujian Perangkat Lunak

Slide-TIF407-Pengujian-perangkat-lunak.ppt
Slide-TIF407-Pengujian-perangkat-lunak.pptSlide-TIF407-Pengujian-perangkat-lunak.ppt
Slide-TIF407-Pengujian-perangkat-lunak.ppt
ritanovitasari3
 
Pengujian-perangkat-lunak
Pengujian-perangkat-lunakPengujian-perangkat-lunak
Pengujian-perangkat-lunak
taufiq agung
 
5 a walk through of software testing techniques
5 a walk through of software testing techniques5 a walk through of software testing techniques
5 a walk through of software testing techniques
dede abdulah
 
MOBILE CONFIGURATION
MOBILE CONFIGURATIONMOBILE CONFIGURATION
MOBILE CONFIGURATION
Shahril Majid
 
Pertemuan 4 Strategi Testing
Pertemuan 4  Strategi TestingPertemuan 4  Strategi Testing
Pertemuan 4 Strategi Testing
Endang Retnoningsih
 
Software testing
Software testingSoftware testing
Software testing
Muhammad Syafriansyah
 
Ringkasan Bab 19 – 22 Buku Software Engineering.pptx
Ringkasan Bab 19 – 22 Buku Software Engineering.pptxRingkasan Bab 19 – 22 Buku Software Engineering.pptx
Ringkasan Bab 19 – 22 Buku Software Engineering.pptx
SaifAlfarizi1
 
Strategi Testing System
Strategi Testing SystemStrategi Testing System
Strategi Testing System
Yudi Purwanto
 
Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1
Fendi Hidayat
 
Software testing
Software testingSoftware testing
Software testingjullejulle
 
Blackbox And Whitebox Testing
Blackbox And Whitebox TestingBlackbox And Whitebox Testing
Blackbox And Whitebox Testing
AnsviaLab
 
Bab 5 pengujian_perangkat_lunak
Bab 5 pengujian_perangkat_lunakBab 5 pengujian_perangkat_lunak
Bab 5 pengujian_perangkat_lunak
Adie Suryadi
 
Case Study For Software Testing
Case Study For Software TestingCase Study For Software Testing
Case Study For Software Testingzatalinimarsal
 
Mkpl Pertemuan5
Mkpl Pertemuan5Mkpl Pertemuan5
Mkpl Pertemuan5Mrirfan
 
M K P L Pertemuan5
M K P L  Pertemuan5M K P L  Pertemuan5
M K P L Pertemuan5
Mrirfan
 
Slideshow PowerPoint Software Testing
Slideshow PowerPoint Software TestingSlideshow PowerPoint Software Testing
Slideshow PowerPoint Software Testing
Moch. Nor Kholis
 
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptx
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptxSlide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptx
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptx
YessiSofia1
 

Similar to Teknik Pengujian Perangkat Lunak (20)

Slide-TIF407-Pengujian-perangkat-lunak.ppt
Slide-TIF407-Pengujian-perangkat-lunak.pptSlide-TIF407-Pengujian-perangkat-lunak.ppt
Slide-TIF407-Pengujian-perangkat-lunak.ppt
 
Pengujian-perangkat-lunak
Pengujian-perangkat-lunakPengujian-perangkat-lunak
Pengujian-perangkat-lunak
 
Dede Rpl Kuis
Dede Rpl KuisDede Rpl Kuis
Dede Rpl Kuis
 
5 a walk through of software testing techniques
5 a walk through of software testing techniques5 a walk through of software testing techniques
5 a walk through of software testing techniques
 
MOBILE CONFIGURATION
MOBILE CONFIGURATIONMOBILE CONFIGURATION
MOBILE CONFIGURATION
 
Pertemuan 4 Strategi Testing
Pertemuan 4  Strategi TestingPertemuan 4  Strategi Testing
Pertemuan 4 Strategi Testing
 
Software testing
Software testingSoftware testing
Software testing
 
Minggu Ii
Minggu IiMinggu Ii
Minggu Ii
 
Ringkasan Bab 19 – 22 Buku Software Engineering.pptx
Ringkasan Bab 19 – 22 Buku Software Engineering.pptxRingkasan Bab 19 – 22 Buku Software Engineering.pptx
Ringkasan Bab 19 – 22 Buku Software Engineering.pptx
 
Strategi Testing System
Strategi Testing SystemStrategi Testing System
Strategi Testing System
 
Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1
 
Software testing
Software testingSoftware testing
Software testing
 
Blackbox And Whitebox Testing
Blackbox And Whitebox TestingBlackbox And Whitebox Testing
Blackbox And Whitebox Testing
 
Bab 5 pengujian_perangkat_lunak
Bab 5 pengujian_perangkat_lunakBab 5 pengujian_perangkat_lunak
Bab 5 pengujian_perangkat_lunak
 
Case Study For Software Testing
Case Study For Software TestingCase Study For Software Testing
Case Study For Software Testing
 
Mkpl Pertemuan5
Mkpl Pertemuan5Mkpl Pertemuan5
Mkpl Pertemuan5
 
M K P L Pertemuan5
M K P L  Pertemuan5M K P L  Pertemuan5
M K P L Pertemuan5
 
Slideshow PowerPoint Software Testing
Slideshow PowerPoint Software TestingSlideshow PowerPoint Software Testing
Slideshow PowerPoint Software Testing
 
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptx
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptxSlide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptx
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptx
 
Kuliah6 proses pengujian
Kuliah6 proses pengujianKuliah6 proses pengujian
Kuliah6 proses pengujian
 

Teknik Pengujian Perangkat Lunak

  • 2. Latar BelakangLatar Belakang  Pengujian P/L adalah elemen kritis dariPengujian P/L adalah elemen kritis dari jaminan kualitas P/L dan merupakanjaminan kualitas P/L dan merupakan review puncak terhadap spesifikasi,review puncak terhadap spesifikasi, desain dan pembuatan program.desain dan pembuatan program.  Pengujian P/L menghabiskan upaya 30-Pengujian P/L menghabiskan upaya 30- 40% dari total pekerjaan proyek.40% dari total pekerjaan proyek.  Untuk proyek yang membahayakanUntuk proyek yang membahayakan nyawa manusia, biaya pengujian bisa 3-5nyawa manusia, biaya pengujian bisa 3-5 X proyek biasa.X proyek biasa.
  • 3. Tujuan PengujianTujuan Pengujian 1.1. Menjalankan program untuk menemukanMenjalankan program untuk menemukan error.error. 2.2. Test case yang bagus adalah yangTest case yang bagus adalah yang memiliki kemungkinan terbesar untukmemiliki kemungkinan terbesar untuk menemukan error yang tersembunyi.menemukan error yang tersembunyi. 3.3. Pengujian yang sukses adalah yangPengujian yang sukses adalah yang berhasil menemukan error yangberhasil menemukan error yang tersembunyi.tersembunyi.
  • 4. Prinsip PengujianPrinsip Pengujian  Harus bisa dilacak hingga sampai keHarus bisa dilacak hingga sampai ke kebutuhan customer.kebutuhan customer.  Harus direncanakan sejak model dibuat.Harus direncanakan sejak model dibuat.  Prinsip Pareto: 80% error uncovered.Prinsip Pareto: 80% error uncovered.  Dari lingkup kecil menuju yang besar.Dari lingkup kecil menuju yang besar.  Tidak bisa semua kemungkinan diuji.Tidak bisa semua kemungkinan diuji.  Dilakukan oleh pihak ketiga yangDilakukan oleh pihak ketiga yang independen.independen.
  • 5. TestablilityTestablility  Kemudahan untuk diuji.Kemudahan untuk diuji.  Karakteristiknya:Karakteristiknya: – Operability: mudah digunakan.Operability: mudah digunakan. – Observability: mudah diamati.Observability: mudah diamati. – Controlability: mudah dikendalikan.Controlability: mudah dikendalikan. – Decomposability: mudah diuraikan.Decomposability: mudah diuraikan. – Simplicity: lingkup kecil, semakin mudah diuji.Simplicity: lingkup kecil, semakin mudah diuji. – Stability: jarang berubah.Stability: jarang berubah. – Understandability: mudah dipahami.Understandability: mudah dipahami.
  • 6. Desain Kasus PengujianDesain Kasus Pengujian  Black box testingBlack box testing – Memastikan fungsional P/L berjalan.Memastikan fungsional P/L berjalan. – Kesesuaian input dengan output.Kesesuaian input dengan output. – Tidak memperhatikan proses logic internal.Tidak memperhatikan proses logic internal.  White box testingWhite box testing – Pengamatan detail prosedur.Pengamatan detail prosedur. – Mengamati sampai level percabangan kondisiMengamati sampai level percabangan kondisi dan perulangan.dan perulangan.
  • 7. White Box TestingWhite Box Testing  Metode: basis path testing.Metode: basis path testing.  Memakai notasi flow graph.Memakai notasi flow graph.
  • 8. Kompleksitas CyclomaticKompleksitas Cyclomatic  Menunjukkan jumlah skenario pengujian yang harusMenunjukkan jumlah skenario pengujian yang harus dilakukan untuk menjamin cakupan seluruh program.dilakukan untuk menjamin cakupan seluruh program.
  • 9. Contoh White Box TestingContoh White Box Testing  Lihat bukuLihat buku halaman 449halaman 449 – 452.– 452.
  • 10. Black Box Testing – Graph BasedBlack Box Testing – Graph Based
  • 11. Black Box Testing – EquivalenceBlack Box Testing – Equivalence PartitioningPartitioning  Contoh: Input NPM dalam SIAMIKContoh: Input NPM dalam SIAMIK – Jika dikosongi?Jika dikosongi? – Jika diisi dengan format yang salah?Jika diisi dengan format yang salah? – Jika diisi dengan NPM yang benar?Jika diisi dengan NPM yang benar?
  • 12. Black Box Testing – Analisa NilaiBlack Box Testing – Analisa Nilai BatasBatas 1.1. Menguji untuk input di sekitar batas atasMenguji untuk input di sekitar batas atas maupun bawah sebuah range nilai yangmaupun bawah sebuah range nilai yang valid.valid. 2.2. Menguji nilai maksimal dan minimal.Menguji nilai maksimal dan minimal. 3.3. Menerapkan (1 & 2) untuk output.Menerapkan (1 & 2) untuk output. 4.4. Menguji batas struktur data yang dipakai.Menguji batas struktur data yang dipakai. Misal ukuran array.Misal ukuran array.
  • 13. Black Box Testing – PerbandinganBlack Box Testing – Perbandingan  Spesifikasi kebutuhan yang samaSpesifikasi kebutuhan yang sama dimungkinkan menghasilkan aplikasi/dimungkinkan menghasilkan aplikasi/ perangkat lunak yang berbeda.perangkat lunak yang berbeda.  Skenario pengujian pada aplikasi yangSkenario pengujian pada aplikasi yang demikian bisa digunakan untuk skenariodemikian bisa digunakan untuk skenario pengujian aplikasi serupa yang lain.pengujian aplikasi serupa yang lain.
  • 14. Skenario Pengujian KhususSkenario Pengujian Khusus  Pengujian GUI.Pengujian GUI.  Pengujian arsitektur client/ server.Pengujian arsitektur client/ server.  Pengujian dokumentasi dan fasilitasPengujian dokumentasi dan fasilitas bantuan.bantuan.  Pengujian sistem waktu nyata.Pengujian sistem waktu nyata.
  • 15. CHAPTER 18CHAPTER 18 STRATEGI PENGUJIANSTRATEGI PENGUJIAN P/LP/L
  • 16. STRATEGI PENGUJIAN P/LSTRATEGI PENGUJIAN P/L  Membahas langkah-langkah yang harusMembahas langkah-langkah yang harus dikerjakan sebagai bagian dari pengujian.dikerjakan sebagai bagian dari pengujian.  Kapan dilaksanakan? Berapa usaha,Kapan dilaksanakan? Berapa usaha, waktu dan sumber daya yang digunakan?waktu dan sumber daya yang digunakan?  Meliputi: perencanaan, desain test case,Meliputi: perencanaan, desain test case, pelaksanaan, koleksi data dan evaluasi.pelaksanaan, koleksi data dan evaluasi.
  • 17. Kaidah Umum PengujianKaidah Umum Pengujian  Dimulai dari pengujian tingkat komponen menujuDimulai dari pengujian tingkat komponen menuju integrasi.integrasi.  Titik yang berbeda dimungkinkan memakaiTitik yang berbeda dimungkinkan memakai teknik pengujian yang berbeda.teknik pengujian yang berbeda.  Pengujian dilakukan oleh developer dan (untukPengujian dilakukan oleh developer dan (untuk proyek yang besar) tim independen.proyek yang besar) tim independen.  Testing dan debugging adalah berbeda. NamunTesting dan debugging adalah berbeda. Namun debugging pasti berkaitan dengan strategidebugging pasti berkaitan dengan strategi testing apapun.testing apapun.
  • 18. Strategi PengujianStrategi Pengujian  Dimulai dari unit testing terhadap sourceDimulai dari unit testing terhadap source code hingga system testing terhadapcode hingga system testing terhadap spesifikasi kebutuhan.spesifikasi kebutuhan.
  • 21. Integration TestingIntegration Testing  Top – down integrationTop – down integration
  • 22. Integration TestingIntegration Testing  Bottom – up integrationBottom – up integration
  • 23. Integration TestingIntegration Testing  Regression testing: dilakukan pengujianRegression testing: dilakukan pengujian setiap kali ada modul baru yangsetiap kali ada modul baru yang diintegrasikan atau ada modul yangdiintegrasikan atau ada modul yang berubah.berubah.  Smoke testing: test daily, untuk proyekSmoke testing: test daily, untuk proyek jenis kritis-waktu.jenis kritis-waktu.
  • 24. Validation TestingValidation Testing  Disebut sukses jika fungsi P/L dapatDisebut sukses jika fungsi P/L dapat diterima oleh customer (berdasarkanditerima oleh customer (berdasarkan dokumen SKPL).dokumen SKPL).  Alpha test: dilakukan di tempat developerAlpha test: dilakukan di tempat developer oleh customer pada lingkungan yangoleh customer pada lingkungan yang terkendali.terkendali.  Beta test: dilakukan di tempat customerBeta test: dilakukan di tempat customer tanpa melibatkan developer padatanpa melibatkan developer pada lingkungan yang tak terkendali.lingkungan yang tak terkendali.
  • 25. System TestingSystem Testing  Meguji sistem berbasis komputer secaraMeguji sistem berbasis komputer secara menyeluruh, termasuk juga hubungannyamenyeluruh, termasuk juga hubungannya dengan sistem yang lain.dengan sistem yang lain.  Diantaranya:Diantaranya: – Recovery testing, jika system failure.Recovery testing, jika system failure. – Security testing, jika terjadi serangan.Security testing, jika terjadi serangan. – Stress testing, terhadap jumlah, frekuensi dan volumeStress testing, terhadap jumlah, frekuensi dan volume pekerjaan.pekerjaan. – Performance testing, untuk mengukur pemakaianPerformance testing, untuk mengukur pemakaian sumber daya.sumber daya.
  • 26. DebuggingDebugging  Memperbaiki error yang ditemukan padaMemperbaiki error yang ditemukan pada saat testing (yang sukses).saat testing (yang sukses).  Kaidah dasar sebelum debug:Kaidah dasar sebelum debug: – Apakah penyebab bug dihasilkan kembaliApakah penyebab bug dihasilkan kembali oleh bagian program yang lain?oleh bagian program yang lain? – Apakah bug selanjutnya yang mungkinApakah bug selanjutnya yang mungkin muncul jika bug diperbaiki?muncul jika bug diperbaiki? – Apa yang bisa dilakukan untuk mencegah bugApa yang bisa dilakukan untuk mencegah bug terjadi untuk pertama kalinya?terjadi untuk pertama kalinya?