SlideShare a Scribd company logo
1 of 22
Download to read offline
TUGAS
  TESTING DAN IMPLEMENTASI
          SOFTWARE

              Oleh
             FATONI
            10029032




STMIK DHARMA BAKTI WACANA METRO
         METRO PUSAT
             2011


                                  1
KATA PENGANTAR


      Puji syukur kami panjatkan kehadirat Allah SWT yang telah memberikan

rahmat dan hidayah-Nya, sehingga penulis dapat menyelesaikan Tugas

Makalah Testing dan Implementasi Software.

      Selama tugas makalah ini banyak kesulitan yang dihadapi, akan tetapi

berkat bimbingan, petunjuk serta bantuan dari berbagai pihak.     Penulis

mengucapkan terima kasih kepada :

      1. Surono, S.Kom. selaku dosen Testing dan Implementasi.

      2. Seluruh pihak yang dengan senang hati mau berbagi ilmu

         pengetahuan dan informasi melalui media internet dan lainnya.

         Terima kasih, karena itu sangat membantu sekali dan membuka

         cakrawala pengetahuan yang baru bagi penulis.

      Penulis menyadari bahwa tugas makalah ini masih jauh dari kata

sempurna. Oleh karena itu, mohon maaf apabila ada kesalahan-kesalahan

dalam penyajian tugas ini. Semoga tugas makalah ini dapat memberikan

manfaat dan kontribusi kepada perkembangan ilmu pengetahuan.




                                                              Penulis




                                                                        2
BAB I
                    PENGERTIAN DASAR
                 TESTING DAN IMPLEMENTASI


1.1 Latar Belakang

SDLC (Software Development Life Cycle) berarti sebuah siklus hidup
pemngembangan perangkat lunak yang terdiri dari beberapa tahapan-tahapan
yang sangat penting dalam keberadaan perangkat lunak yang dilihat dari segi
pengembangannya.        Dalam   Tahapan   SDLC     terdiri   dari   beberapa
tahapan-tahapan berdasarkan analisa kebutuhan yang ada . Dimulai dari
analisa kebutuhan perangkat lunak akan dibuat terlebih dahulu desain dari
kebutuhan tersebut untuk mempermudah dalam pengerjaannya. Kemudian
segala kebutuhan tersebut di implementasikan dengan dua tahap yaitu tahap
analisa dan tahap evaluasi (User Acceptance Test). Setelah melakukan
implementasi, maka proses tersebut akan dikembalikan kembali ke dalam
tahap desain untuk pengembangan kembali perangkat lunak ke versi yang
terbaru.

Proses Tahapan SDLC yang paling sering digunakan adalah :
  1. Perencanaan:
     Mempelajari konsep sistem dan permasalahan yang hendak diselesaikan.
     apakah sistem baru tersebut realistis dalam masalah pembiayaan, waktu,
     serta perbedaan dengan sistem yang ada sekarang.
  2. Analisis Sistem:
     Menganalisis konsep sistem, permasalahan dan keperluan yang hendak
     dibuat.
  3. Desain :
     Mendesain sistem teknologi baru untuk permasalahan yang sama.




                                                                           3
4. Kon struksi :
     Perbaikan terhadap produk yang memiliki kesalahan/kerusakan
  5. Implementasi
     software yang telah diuji dan siap diimplementasikan kedalam sistem
     pengguna/ sudah siap diterapkan.
  6. Maintenance:
     sistem yang telah diimplemantasikan serta dapat mengikuti
     perkembangan dan perubahan apapun yang terjadi guna meraih tujuan
     penggunaannya

1.2 Implementasi Perangkat Lunak
Hasil Rancangan detail yang ditranslasikan ke dalam suatu bahasa
pemrograman, proses translasi dilanjutkan bila suatu kompiler menerima
source code sebagai masukan dan mengkasilkan object code yang akan
diterjemahkan menjadi machine code. Bahasa pemrograman adalah alat yang
digunakan untuk komunikasi anatara manusia dan komputer
            Pemilihan bahasa pemrograman didasarkan atas :
1. Lingkup aplikasi
2. Algortima dan kompleksitas
3. Lingkungan pemrograman
4. Performansi
5. Struktur data
6. Pengetahuan pemrogram
7. Ketersediaan komputer

1.3 Testing perangkat lunak
Pengertian Testing perangkat lunak adalah proses menjalankan dan
mengevaluasi sebuah perangkat lunak secara manual maupun otomatis untuk
menguji apakah perangkat lunak sudah memenuhi persyaratan atau belum
untuk menentukan perbedaan antara hasil yang diharapkan dengan hasil
sebenarnya.




                                                                      4
1.4 Prinsip pengujian yang harus diperhatikan.
•   Dapat dilacak hingga ke persyaratan atau dokumen SRS
•   Pengujian harus direncanakan sebelum pelaksanaan pengujian
•   Pengujian harus dimulai dari hasl yang kecil, diteruskan ke hal-hal yang
    besar.
•   Pengujian yang berlebihan tidak akan mungkin dapat dilaksanakan
•   Pengujian sebaiknya dilakukan oleh pihak ketiga.


1.5 Tujuan Pengujian
•   Menilai apakah perangkat lunak yang dikembangkan telah memenuhi
    kebutuhan pemakai.
•   Menilai apakah tahap pengembangan perangkat lunak telah sesuai
    dengan metodologi yang digunakan.
•   Membuat       dokumentasi   hasil     pengujian   yang   menginformasikan
    kesesuaian perangkat lunak yang diuji dengan spesifikasi yang telah
    ditentukan.

1.6 Strategi Pengujian

1.6.1 Pengujian unit program

Pengujian difokuskan pada unit terkecil dari suatu modul program.
Dilaksanakan dengan menggunakan driver dan stub. Driver adalah suatu
program utama yang berfungsi mengirim atau menerima data kasus uji dan
mencetak hasil dari modul yang diuji. Stub adalah modul yang menggantikan
modul sub-ordinat dari modul yang diuji.

1.6.2 Pengujian integrasi
Pengujian terhadap unit-unit program yang saling berhubungan (terintegrasi)
dengan fokus pada masalah interfacing. Dapat dilaksanakan secara top-down
integration atau bottom-up integration.




                                                                            5
1.6.3 Pengujian validasi
Pengujian ini dimulai jika pada tahap integrasi tidak ditemukan kesalahan.
Suatu validasi dikatakan sukses jika perangkat lunak berfungsi pada suatu
cara yang diharapkan oleh pemakai.

1.6.4 Pengujian sistem
Pengujian yang dilakukan sepenuhnya pada sistem berbasis komputer.

     Recovery testing
  Pengujian dilakukan dimana sistem diusahakan untuk gagal, kemudian diuji
  normalisasinya.

     Security testing
  Dilakukan untuk menguji mekanisme proteksi

     Stess testing
  Pengujian yang dirancang untuk menghadapkan suatu perangkat lunak
  kepada situasi Yang tidak normal.




                                                                        6
BAB II
           TAHAP TESTING DAN IMPLEMENTASI


2.1 Tahap-tahap Pengujian
•   Memeriksa apakah sistem sudah berlaku dengan benar atau belum saat
    digunakan oleh user.
•   Memperkirakan apakah sistem dapat menanggulangi segala kondisi dan
    data mainstream.
•   Memeriksa performansi behaviour dari sistem. Misal berapa lama waktu
    yang diperlukan sistem untuk mengerjakan suatu tugas yang diberikan.
•   Menguji volume, stress dan storage untuk meeriksa performance dibawah
    kondisi ekstrim seperti jumlah input yang besar, high speed input, jumlah
    user yang banyak serta meningkatnya jumlah aktivitas secara tiba-tiba.
•   Semua perhitungan diperiksa ketepatannya dengan data dan kondisi yang
    telah diperkirakan maupun tidak.
•   Menguji error handling dan recovery dari sistem seperti memeriksa bahwa
    akan keluar pesan error yang tepat pada setiap kondisi dan pemulihan
    yang baik setelah sistem mengalami fatal errror.
•   Memeriksa kelayakan tingkat keamanan pada sistem agar user yang tidak
    berwenang tidak dapat memperoleh akses ke sistem.


Tipe-tipe system testing
– volume : memfokuskan untuk input yang besar
– usability : mengukur reaksi user ( skala 1-10)
– performance : mengukur kecepatan pada beberapa keadaan
– configurasi : mengkonfogurasi untuk bermacam-macam hardware atau
    software
– compatibility : komplabiliti dengan aplikasi lain ( contoh: mengukur waktu
    adaptasi)




                                                                             7
– reliability/availability : mengukur ketahanan pada periode waktu yang
      lama
– security
– resource usage : mengukur penggunaan RAM, ruang disk, dll
– installability : di install pada bermacam-macam keadaan (mengukur waktu
      install)
– recoverability : mengukur waktu untuk me-recover
– serviceability : mengukur waktu service
– load/stress: untuk data extreme dan traffic


2.2 Pengujian Tahap Analisis
ditekankan pada validasi terhadap kebutuhan, untuk menjamin bahwa
kebutuhan telah dispesifikasikan dengan benar. Tujuan pengujian pada tahap
ini adalah untuk mendapatkan kebutuhan yang layak dan untuk memastikan
apakah kebutuhan tersebut sudah dirumuskan dengan baik.


  Faktor-faktor pengujian yang dilakukan meliputi :
  a. Kebutuhan yang berkaitan dengan metodelogi
  b. Pendefinisian spesifikasi fungsional
  c. Penentuan spesifikasi kegunaan
  d. Penentuan kebutuhan portabilitas
  e. Pendefinisian antar muka sistem.


2.3 Pengujian Tahap Perancangan
Bertujuan untuk menguji struktur perangkat lunak yang diturunkan dari
kebutuhan - Kebutuhan yang bersifat umum dirinci menjadi bentuk yang lebih
spesifik .
Faktor-faktor pengujian tahap perancangan meliputi :

  •       Perancangan yang berkaitan dengan kebutuhan

  •       Kesesuaian perancangan dengan metodologi dan teori.


                                                                        8
•     Portabilitas rancangan

    •     Perancangan yang dirawat

    •     Kebenaran rancangan berkaitan dengan fungsi dan aliran data.
    •     Kelengkapan perancangan antar muka.

2.4 Pengujian Tahap Implementasi
Merupakan pengujian unit-unit yang dibuat sebelum diintegrasikan menjadi
aplikasi keseluruhan. Faktor-faktor pengujian tahap implementasi meliputi :

    •     Kendali integritas data
    •     Kebenaran program
    •     kemudahan pemakaian
    •     Sifat coupling
    •     Pengembangan prosedur operasi.

2.5 Pengujian Tahap Testing :
untuk      menilai   apakah    spesifikasi   program    telah   ditulis   menjadi
instruksi-instruksi yang dapat dijalankan pada mesin. Selain itu, juga untuk
menilai apakah instruksi yang ditulis tersebut telah sesuai dengan spesifikasi
program. Faktor-faktor pengujian tahap ini meliputi :

•       Pengujian fungsional
•       Dukungan manual
•       Kemudahan operasi.

2.6 Pengujian dengan Kasus Uji
Dilakukan meliputi pengujian unit (berupa prosedur atau fungsi) dan pengujian
sistem. Dalam pengujian unit, unit-unit yang diuji meliputi unit-unit yang ada
dalam sistem. Sedangkan pengujian sistem dilakukan terhadap sistem secara
keseluruhan. Setiap pengujian dilakukan dengan menggunakan berbagai data
masukan, baik data yang valid maupun tidak.




                                                                                9
BAB III
                         TEKNIK PENGUJIAN


3.1 Teknik Pengujian
Ada Banyak teknik pengujian yang dapat digunakan untuk menguji perangkat
lunak, seperti :
     1. Pengujian Black Box
     2. Pengujian White Box

3.1.1 Pengujian Black Box
Digunakan untuk menguji fungsi-fungsi khusus dari perangkat lunak yang
dirancang. Kebenaran perangkat lunak yang diuji hanya dilihat berdasarkan
keluaran yang dihasilkan dari data atau kondisi masukan yang diberikan untuk
fungsi yang ada tanpa melihat bagaimana proses untuk mendapatkan
keluaran tersebut. Dari keluaran yang dihasilkan, kemampuan program dalam
memenuhi kebutuhan pemakai dapat diukur sekaligus dapat diiketahui
kesalahan-kesalahannya.
Beberapa jenis kesalahan yang dapat diidentifikasi :

•   Fungsi tidak benar atau hilang

•   Kesalahan antar muka

•   Kesalahan pada struktur data (pengaksesan basis data)

•   Kesalahan inisialisasi dan akhir program

•   Kesalahan performasi.




                                                                         10
requirements




                                                          output




           input                              events



Contoh Black Box:
A. Strategi OO Testing




   •   Unit Testing  Pengujian class/object
   •   Integration Testing  object integration testing
   •   System Testing




                                                                   11
Pengujian class/object
   • Encapsulated state  Memeriksa interaksi method-method dengan data
      obyek
   • Interaksi antar method  Memeriksa interaksi method-method dari
      sebuah obyek
   • Pewarisan dan polimorfisme

B. Unit Testing
   • Tahapan testing yang paling awal.
   • Tahap selanjutnya terdiri dari integration testing dan system testing
   • Biasanya unit didefinisikan sebagai:
          – Suatu fungsi atau prosedur tunggal yang kohesif
          – Segmen terkecil dari kode program yang bisa dikompile secara
             terpisah.
          – Sebuah fungsi yang pas pada suatu halaman tunggal.
          – Kode yang bisa ditulis oleh seseorang dalam suatu kurun waktu.
   • Definisi yang biasa dipakai yaitu definisi pada point pertama.
   • Input untuk proses test planning terdiri dari requirement dan detailed
      design. Output dari proses test planning adalah unit test plan.
   • Tahap selanjutnya adalah akuisisi data input dan output yang
      berasosiasi dengan masing-masing test. Hasil dari tahap ini dinamakan
      test set.
   • Test di eksekusi.




                                                                        12
C. Pengujian Method
   • Memverifikasi operasi pada nilai normal parameter (sebuah black box
      test yang berdasarkan pada kebutuhan unit)
   • Memverifikasi operasi pada nilai limit parameter (black box)
   • Memverifikasi operasi nilai diluar batas nilai parameter (black box)
   • Memastikan bahwa semua instruksi di eksekusi (statement coverage)
   • Cek semua path, termasuk semua cabang (decision coverage)
   • Cek semua penggunaan object yang dipanggil
   • Memverifikasi penanganan dari semua struktur data
   • Memverifikasi penanganan semua file
   • Cek terminasi normal dari semua loop ( part of correctness proof)
   • Cek terminasi abnormal dari semua loop
   • Cek terminasi normal dari semua rekursif
   • Cek terminasi abnormal dari semua rekursif
   • Memverifikasi penanganan semua kondisi error
   • Cek timing dan sinkronisasi
   • verifikasi semua ketergantungan hardware

D. Class Testing
   • Kombinasikan penggunaan method
         – biasanya 2-5
         – pilih rangkaian pertama yang paling umum
         – masukan rangkaian yang mungkin menyebabkan error
   • Fokuskan unit test pada masing-masing atribut
         – inisialisasi, lalu eksekusi rangkaian method yang dipengaruhinya
   • Verifikasi masing-masing invariant class tidak berubah
   • Verifikasi object transisi diantara state-state yang ada.
         – Rencanakan rangkaian state/transisisi
         – Set up object dalam inisial state dengan menyeting variable
         – Sediakan event pertama dan cek transisi yang terjadi

E. Pengujian integrasi object
   • Menguji unit yang telah diuji secara tunggal bekerja secara baik pula
      setelah digabungkan pada sistem
   • Mereka akan digabungkan ke dalam suatu grup logis yang koheren
      untuk diuji kembali( subsistem )
   • Saat subsistem tersebut berhasil bekerja dengan baik maka akan
      dilanjutkan dengan menggabungkannya dengan subsistem yang lain
      dan seterusnya sampai membentuk suatu sistem utuh yang teruji
   • Hal yang diperhatikan yaitu memeriksa semua unit apakah bekerja
      bersama dengan baik.
   • Penguji lebih mengkonsentrasikan pada interaksi unit daripada
      fungsionalitasnya




                                                                        13
F. Merancang dan Melakukan Integration Testing
   • Putuskan bagaimana dan dimana untuk menyimpan, menggunakan
      kembali dan mengkodekan integration test
          – tunjukan dalam project schedule
   • Ekesekusi unit-unit test sebanyak mungin sesuai dengan waktu yang
      tersedia
   • Gunakan test regresi
   • Pastikan kebutuhan pembangunan telah dispesifikasikan.
   • Gunakan use case yang harus diimplementasikan
   • Eksekusi system test

G. Tahapan System Testing
   • Memeriksa apakah sistem sudah berlaku dengan benar atau belum
      saat digunakan oleh user.
   • Memperkirakan apakah sistem dapat menanggulangi segala kondisi
      dan data mainstream.
   • Memeriksa performansi behaviour dari sistem. Misal berapa lama waktu
      yang diperlukan sistem untuk mengerjakan suatu tugas yang diberikan.
   • Menguji volume, stress dan storage untuk meeriksa performance
      dibawah kondisi ekstrim seperti jumlah input yang besar, high speed
      input, jumlah user yang banyak serta meningkatnya jumlah aktivitas
      secara tiba-tiba.
   • Semua perhitungan diperiksa ketepatannya dengan data dan kondisi
      yang telah diperkirakan maupun tidak.
   • Menguji error handling dan recovery dari sistem seperti memeriksa
      bahwa akan keluar pesan error yang tepat pada setiap kondisi dan
      pemulihan yang baik setelah sistem mengalami fatal errror.
   • Memeriksa kelayakan tingkat keamanan pada sistem agar user yang
      tidak berwenang tidak dapat memperoleh akses ke sistem.




3.1.2 Pengujian White Box :



                                                                       14
Pengujian White Box digunakan untuk mengetahui cara kerja suatu perangkat
lunak secara internal. Pengujian dilakukan untuk menjamin operasi-operasi
internal   sesuai   dengan   spesifikasi   yang   telah    ditetapkan   dengan
menggunakan struktur kendali dari prosedur yang dirancang.




     Tujuan kita adalah menjamin semua statemen dan kondisi telah
                        dieksekusi minimal sekali



Pelaksanaan pengujian white box :
  a. Menjamim seluruh independent path dieksekusi paling sedikit satu kali.
      Independent path adalah jalur dalam program yang menunjukkan paling
      sedikit satu kumpulan proses ataupun kondisi baru.
  b. Menjalani logical decision pada sisi dan false
  c. Mengeksekusi      pengulangan    (looping)   dalam     batas-batas   yang
      ditentukan
  d. Menguji struktur data internal


Contoh Testing White Box:




                                                                            15
A. Condition Testing

Condition Testing bertujuan untuk mengeksekusi semua kondisi lojik dari
sebuah modul program
 Dapat mendefinisikan
     Relational Expression (E1 op E2) : dimana E1 dan E2 adalah arithmetic
     expression
     Simple Condition: variabel boolean atau relational expression, mungkin
     diawali dengan operator NOT
     Compound condition: terdiri dari dua atau lebih simple
     conditions,operator boolean, dan tanda kurung
     Boolean Expression: kondisi tanpa relational expression

Tipe kesalahan pada sebuah kondisi dapat mencakup:
      boolean operator error (adanya incorrect/missing/extra         boolean
      operator)
      boolean variable error
      boolean parenthesis (tanda kurung) error
      relational operator error
      arithmetic expression error


Metode condition testing fokus pada pengujian setiap kondisi yang ada pada
program, Keuntungan strategi condition testing
       Memperkirakan pengujian berdasarkan kondisi adalah hal yang simpel
       Cakupan pengujian dapat mengarahkan pada penambahan kasus uji
       untuk sebuah program
Beberapa strategi yang termasuk condition testing
        Branch Testing
        Domain Testing
        Branch and Relational Operator Testing – menggunakan kondisi
        sebagai batasan
Contoh: C1 = B1 & B2
        dimana B1, B2 adalah boolean conditions
        Batasan kondisi D1, D2 dimana D1 dan D2 dapat bernilai true (t) atau
        false (f)
        Cabang dan operator relasi membutuhkan batasan-batasan { (t,t), (f,t),
        (t,f) } harus dipenuhi untuk eksekusi C1
Cakupan batasan-batasan menjamin pendekteksian kesalahan pada operator
relasional (relational operator errors)



B. Branch Testing




                                                                           16
Branch testing adalah strategi pengujian berbasis kondisi yang paling simpel,
Untuk setiap kondisi percabangan C, maka setiap cabangnya harus dieksekusi
minimal sekali (yang bernilai true atau false)


C. Data Flow Testing

Metode Data Flow testing memilih aliran tes dari program berdasarkan lokasi
pendefinisian dan penggunaan variabel dalam program
 dengan Data flow testing
 Setiap statemen di dalam program diasumsikan diisi dengan angka yang unik
dan diasumsikan tidak ada fungsi yang mengubahnya
    Defs( s ) = { x | statemen S berisi pendefinisian X }
    Use( s ) = { x | statemen S berisi penggunaan X }
    DU Chain (Definition - Use Chain) dari variabel X dengan bentuk {X, S, S’},
    dimana S, S’ adalah jumlah statemen, X di dalam Defs(S) dan Defs(S’).
 Rangkaian yang mungkin lainnya:
    DD (Definition-Definition Chain) – harus dihindari
    UU (Use-Use Chain) - common chain
    UD (Use-Definition Chain) - common chain
 Salah satu strategi yang simpel adalah Strategi DU Testing
    Strategi ini menyatakan bahwa setiap DU chain harus dilalui minimal sekali




                                                                            17
D. Loop Testing

Loop adalah dasar dari banyak algoritma. Loop dapat didefinisikan menjadi
berikut:




Untuk menguji:
Simple Loops dengan n kali:
1. Abaikan perulangan
2. Masuki perulangan sekali
3. Masuki perulangan dua kali
4. Masuki perulangan m kali dimana m<n.
5. Masuki perulangan (n-1), n, dan (n+1) kali

Nested Loops
1. Mulai dengan perulangan yang ada di dalam, set semua perulangan ke
   nilai minimum
2. Uji sebagai simple loop untuk perulangan yang ada di dalam
3. Pengujian dari dalam ke luar
4. Lanjutkan sampai semua loop diuji

Concatenated Loops
1. Jika perulangan independen, gunakan pengujian simple loop
2. Jika perulangan tidak saling independen, gunakan nested loops.

Unstructured loops
1. Jangan diuji – harus didesain ulang



                                                                      18
BAB IV
                            HASIL TESTING


4.1 Standar ANSI/IEEE untuk test dokumentasi
   • introduction
   • test plan : item dalam test,ruang lingkup, pendekatan, resource, jadwal,
       personel
   • test design: item yang ditest, pendekatan, rencana detail
   • test case : kumpulan input dan event
   • test procedures : langkah-langkah untuk menyeting dan mengeksekusi
       test case
   • test item transmittal report : item-item dalam test, lokasi fisik dari hasil,
       orang yang bertanggung jawab untuk transmitting
   • test log : kronologi record, lokasi fisik dari hasil, nama penguji
   • test incident report : dokumentasi dari setiap event yang terjadi selama
       test, yang membutuhkan investigasi lebih lanjut
   • test summary report : kesimpulan-kesimpulan dari keseluruhan
       point-point di atas

4.2 Testing Tools
   • Testing bervolume besar biasanya membutuhkan penggunaan tool-tool
      otomatis. Jacobson menyarankan bahwa 75% dari test lebih baik
      dilakukan secara otomatis daripada dilakukan secara manual.
   • Kemampuan dari tools otomatis system test:
          – merekam aksi mouse dan keyboard untuk memungkinkan
             pengulangan pemutaran kembali
          – jalankan test script secara berulang-ulang
          – memungkinkan untuk merekam hasil test
   • merekam waktu eksekusi
   • merekam run time error
   • membuat dan mengatur regression test
   • menghasilkan test report
   • menghasilkan test data
   • merekam penggunaan memory
   • mengatur/mengelola test case
   • analisa keseluruhan




                                                                               19
4.3 BLACK BOX TESTING
Proses pengujian kotak hitam untuk blok aplikasi yang ditunjukkan pada
Gambar




                       Gambar . Black box testing process
Pengujian Black Box Langkah
Pengujian kotak hitam melibatkan pengujian antarmuka eksternal untuk memastikan
bahwa kode tersebut memenuhi persyaratan fungsional dan nonfunctional. Berbagai
langkah yang terlibat dalam pengujian kotak hitam adalah sebagai berikut:

 1. Create test plans. Create prioritized test plans for black box testing.

 2. Test the external interfaces. Test the external interfaces for various type of
    inputs using automated test suites, such as NUnit suites and custom prototype
    applications.

 3. Perform load testing. Load test the application block to analyze the behavior at
    various load levels. This ensures that it meets all performance objectives that are
    stated as requirements.

 4. Perform stress testing. Stress test the application block to analyze various
    bottlenecks and to identify any issues visible only under extreme load conditions,
    such as race conditions and contentions.

 5. Perform security testing. Test for possible threats in deployment scenarios.
    Deploy the application block in a simulated target environment and try to hack the
    application by exploiting any possible weakness of the application block.

 6. Perform globalization testing. Execute test cases to ensure that the application
    block can be integrated with applications targeted toward locales other than the
    default locale used for development.



                                                                                    20
4.4 WHITE BOX TESTING




                       Gambar. White box testing process

White box testing involves the following steps:

   1. Create test plans. Identify all white box test scenarios and prioritize them.

   2. Profile the application block. This step involves studying the code at run
      time to understand the resource utilization, time spent by various methods and
      operations, areas in code that are not accessed, and so on.

   3. Test the internal subroutines. This step ensures that the subroutines or the
      nonpublic interfaces can handle all types of data appropriately.

   4. Test loops and conditional statements. This step focuses on testing the
      loops and conditional statements for accuracy and efficiency for different data
      inputs.

   .5   Perform security testing. White box security testing helps you understand
        possible security loopholes by looking at the way the code handles security.




                                                                                      21
DAFTAR PUSTAKA


•   Britton, Carol dan Doake, Jill, “Object –Oriented System
    Development: A gentle Introduction” , Singapore: McGraw-Hill, Inc.,
    2001
•   Braude, Eric J.,”Software Engineering: An Object Oriented
    Perspective”, United State of America: John Wiley & Sons,Inc., 2000
•   Bahrami, Ali, “Object Oriented System Development”, Singapore:
    McGraw-Hill, Inc., 1999
•   Pressman, Roger S.,The 5th edition of Software Engineering: A
    Practitioner's Approach,McGraw-Hill.
•   Sommerville, Ian, Software Engineering, 6th edition, Pearson Education,
    2001
•   http://www.cetus-links.org/oo_testing.html
•   http://www.testing.com/writings/1-fault.htm
•   http://www.rbsc.com/pages/who_who.html




                                                                        22

More Related Content

What's hot

LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...Uofa_Unsada
 
Proposal KAK Sistem Informasi Posko Keamanan
Proposal KAK Sistem Informasi Posko KeamananProposal KAK Sistem Informasi Posko Keamanan
Proposal KAK Sistem Informasi Posko KeamananPutriAprilliandini
 
6. perancangan sistem terinci
6. perancangan sistem terinci6. perancangan sistem terinci
6. perancangan sistem terinciAlvin Setiawan
 
Laporan pembuatan aplikasi my so untuk android ppt
Laporan pembuatan aplikasi my so untuk android pptLaporan pembuatan aplikasi my so untuk android ppt
Laporan pembuatan aplikasi my so untuk android pptWahyu Anggara
 
04 Testing Perangkat Lunak
04 Testing Perangkat Lunak04 Testing Perangkat Lunak
04 Testing Perangkat LunakMrirfan
 
Analisis pada e-commerce dan website Tokopedia.com
Analisis pada e-commerce dan website Tokopedia.comAnalisis pada e-commerce dan website Tokopedia.com
Analisis pada e-commerce dan website Tokopedia.comCllszhr
 
Manajemen ruang-lingkup-proyek
Manajemen ruang-lingkup-proyekManajemen ruang-lingkup-proyek
Manajemen ruang-lingkup-proyekFajar Baskoro
 
Studi kelayakan sistem informasi akademik
Studi kelayakan sistem informasi akademikStudi kelayakan sistem informasi akademik
Studi kelayakan sistem informasi akademikKania Amalia
 
Proposal pembuatan aplikasi
Proposal pembuatan aplikasiProposal pembuatan aplikasi
Proposal pembuatan aplikasiHIMATIF UIN SGD
 
Laporan praktikum 1 pemrograman mobile
Laporan praktikum 1 pemrograman mobileLaporan praktikum 1 pemrograman mobile
Laporan praktikum 1 pemrograman mobileAli Ikhsan
 
PM Scope Management Plan
PM Scope Management PlanPM Scope Management Plan
PM Scope Management PlanBagus Wahyu
 
Laporan Analisis Sistem Informasi Penjualan Indomaret
Laporan Analisis Sistem Informasi Penjualan IndomaretLaporan Analisis Sistem Informasi Penjualan Indomaret
Laporan Analisis Sistem Informasi Penjualan Indomaretsafiravanillia
 
Laporan Kerja Praktik Telkom University 2019
Laporan Kerja Praktik Telkom University 2019Laporan Kerja Praktik Telkom University 2019
Laporan Kerja Praktik Telkom University 2019Zufar Dhiyaulhaq
 
Cobit 5 untuk manajemen teknologi informasi dan proses bisnis
Cobit 5 untuk manajemen teknologi informasi dan proses bisnisCobit 5 untuk manajemen teknologi informasi dan proses bisnis
Cobit 5 untuk manajemen teknologi informasi dan proses bisnisAgreindra Helmiawan
 
Dokumen Perencanaan Proyek
Dokumen Perencanaan ProyekDokumen Perencanaan Proyek
Dokumen Perencanaan ProyekHamka Aminullah
 
Sistem Informasi Global
Sistem Informasi GlobalSistem Informasi Global
Sistem Informasi Globaldhibah
 
Interaksi manusia dan komputer
Interaksi manusia dan komputerInteraksi manusia dan komputer
Interaksi manusia dan komputerMiftahul Khair N
 
PM Risk management plan
PM Risk management planPM Risk management plan
PM Risk management planBagus Wahyu
 
Decision Support System
Decision Support SystemDecision Support System
Decision Support SystemMrirfan
 

What's hot (20)

LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
 
Proposal KAK Sistem Informasi Posko Keamanan
Proposal KAK Sistem Informasi Posko KeamananProposal KAK Sistem Informasi Posko Keamanan
Proposal KAK Sistem Informasi Posko Keamanan
 
6. perancangan sistem terinci
6. perancangan sistem terinci6. perancangan sistem terinci
6. perancangan sistem terinci
 
Laporan pembuatan aplikasi my so untuk android ppt
Laporan pembuatan aplikasi my so untuk android pptLaporan pembuatan aplikasi my so untuk android ppt
Laporan pembuatan aplikasi my so untuk android ppt
 
04 Testing Perangkat Lunak
04 Testing Perangkat Lunak04 Testing Perangkat Lunak
04 Testing Perangkat Lunak
 
Analisis pada e-commerce dan website Tokopedia.com
Analisis pada e-commerce dan website Tokopedia.comAnalisis pada e-commerce dan website Tokopedia.com
Analisis pada e-commerce dan website Tokopedia.com
 
Manajemen ruang-lingkup-proyek
Manajemen ruang-lingkup-proyekManajemen ruang-lingkup-proyek
Manajemen ruang-lingkup-proyek
 
Studi kelayakan sistem informasi akademik
Studi kelayakan sistem informasi akademikStudi kelayakan sistem informasi akademik
Studi kelayakan sistem informasi akademik
 
Proposal pembuatan aplikasi
Proposal pembuatan aplikasiProposal pembuatan aplikasi
Proposal pembuatan aplikasi
 
Laporan praktikum 1 pemrograman mobile
Laporan praktikum 1 pemrograman mobileLaporan praktikum 1 pemrograman mobile
Laporan praktikum 1 pemrograman mobile
 
PM Scope Management Plan
PM Scope Management PlanPM Scope Management Plan
PM Scope Management Plan
 
Laporan Analisis Sistem Informasi Penjualan Indomaret
Laporan Analisis Sistem Informasi Penjualan IndomaretLaporan Analisis Sistem Informasi Penjualan Indomaret
Laporan Analisis Sistem Informasi Penjualan Indomaret
 
Project charter
Project charterProject charter
Project charter
 
Laporan Kerja Praktik Telkom University 2019
Laporan Kerja Praktik Telkom University 2019Laporan Kerja Praktik Telkom University 2019
Laporan Kerja Praktik Telkom University 2019
 
Cobit 5 untuk manajemen teknologi informasi dan proses bisnis
Cobit 5 untuk manajemen teknologi informasi dan proses bisnisCobit 5 untuk manajemen teknologi informasi dan proses bisnis
Cobit 5 untuk manajemen teknologi informasi dan proses bisnis
 
Dokumen Perencanaan Proyek
Dokumen Perencanaan ProyekDokumen Perencanaan Proyek
Dokumen Perencanaan Proyek
 
Sistem Informasi Global
Sistem Informasi GlobalSistem Informasi Global
Sistem Informasi Global
 
Interaksi manusia dan komputer
Interaksi manusia dan komputerInteraksi manusia dan komputer
Interaksi manusia dan komputer
 
PM Risk management plan
PM Risk management planPM Risk management plan
PM Risk management plan
 
Decision Support System
Decision Support SystemDecision Support System
Decision Support System
 

Similar to Testing dan implementasi

BAB_1_PENGUJIAN_PERANGKAT_LUNAK.ppt
BAB_1_PENGUJIAN_PERANGKAT_LUNAK.pptBAB_1_PENGUJIAN_PERANGKAT_LUNAK.ppt
BAB_1_PENGUJIAN_PERANGKAT_LUNAK.pptMunawirBahnget
 
Proses rekayasa perangkat lunak
Proses rekayasa perangkat lunakProses rekayasa perangkat lunak
Proses rekayasa perangkat lunakDavy Arya Atmaja
 
kualitas source code dan pengujian program
kualitas source code dan pengujian programkualitas source code dan pengujian program
kualitas source code dan pengujian programRioKomando
 
Analisa dan Perancangan Sistem Informasi Pert 15
Analisa dan Perancangan Sistem Informasi Pert 15Analisa dan Perancangan Sistem Informasi Pert 15
Analisa dan Perancangan Sistem Informasi Pert 15septianopratama2
 
Tugas sim, alfina rolitasari, yananto mihadi putra, implementasi sistem infor...
Tugas sim, alfina rolitasari, yananto mihadi putra, implementasi sistem infor...Tugas sim, alfina rolitasari, yananto mihadi putra, implementasi sistem infor...
Tugas sim, alfina rolitasari, yananto mihadi putra, implementasi sistem infor...AlfinaRltsr
 
Tugas2 kelompok5 rpl(b)
Tugas2 kelompok5 rpl(b)Tugas2 kelompok5 rpl(b)
Tugas2 kelompok5 rpl(b)Pande Narendra
 
Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1Fendi Hidayat
 
KONSEP DAN PENERAPAN MODEL-MODEL PROSES PEMBANGUNAN PERANGKAT LUNAK
KONSEP DAN PENERAPAN MODEL-MODEL PROSES  PEMBANGUNAN PERANGKAT LUNAK KONSEP DAN PENERAPAN MODEL-MODEL PROSES  PEMBANGUNAN PERANGKAT LUNAK
KONSEP DAN PENERAPAN MODEL-MODEL PROSES PEMBANGUNAN PERANGKAT LUNAK fajrillah
 
Software testing
Software testingSoftware testing
Software testingjullejulle
 
Tahapan pengembangan perangkat lunak
Tahapan pengembangan perangkat lunakTahapan pengembangan perangkat lunak
Tahapan pengembangan perangkat lunakRobbyyanto Robbyyanto
 
Testing dan implemetasi sistem 3
Testing dan implemetasi sistem 3Testing dan implemetasi sistem 3
Testing dan implemetasi sistem 3Fendi Hidayat
 
software testing (black box testing) -- irma darmayanti
software testing (black box testing) -- irma darmayantisoftware testing (black box testing) -- irma darmayanti
software testing (black box testing) -- irma darmayantiIrma Darmayanti
 
Ch 02 - Hubungan Software Development Life Cycle (SDLC) dan Testing
Ch 02 - Hubungan Software Development Life Cycle (SDLC) dan TestingCh 02 - Hubungan Software Development Life Cycle (SDLC) dan Testing
Ch 02 - Hubungan Software Development Life Cycle (SDLC) dan TestingTri Sugihartono
 
Strategi pengujian perangkat lunak
Strategi pengujian perangkat lunakStrategi pengujian perangkat lunak
Strategi pengujian perangkat lunakArdha Herdianto
 
Model Pengembangan Perangkat Lunak
Model Pengembangan Perangkat LunakModel Pengembangan Perangkat Lunak
Model Pengembangan Perangkat Lunakabsurd syu
 
Bug management
Bug managementBug management
Bug managementIvano78
 

Similar to Testing dan implementasi (20)

BAB_1_PENGUJIAN_PERANGKAT_LUNAK.ppt
BAB_1_PENGUJIAN_PERANGKAT_LUNAK.pptBAB_1_PENGUJIAN_PERANGKAT_LUNAK.ppt
BAB_1_PENGUJIAN_PERANGKAT_LUNAK.ppt
 
RPL
RPLRPL
RPL
 
Proses rekayasa perangkat lunak
Proses rekayasa perangkat lunakProses rekayasa perangkat lunak
Proses rekayasa perangkat lunak
 
kualitas source code dan pengujian program
kualitas source code dan pengujian programkualitas source code dan pengujian program
kualitas source code dan pengujian program
 
Analisa dan Perancangan Sistem Informasi Pert 15
Analisa dan Perancangan Sistem Informasi Pert 15Analisa dan Perancangan Sistem Informasi Pert 15
Analisa dan Perancangan Sistem Informasi Pert 15
 
Tugas sim, alfina rolitasari, yananto mihadi putra, implementasi sistem infor...
Tugas sim, alfina rolitasari, yananto mihadi putra, implementasi sistem infor...Tugas sim, alfina rolitasari, yananto mihadi putra, implementasi sistem infor...
Tugas sim, alfina rolitasari, yananto mihadi putra, implementasi sistem infor...
 
Tugas2 kelompok5 rpl(b)
Tugas2 kelompok5 rpl(b)Tugas2 kelompok5 rpl(b)
Tugas2 kelompok5 rpl(b)
 
Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1
 
RPL_Kelompok
RPL_KelompokRPL_Kelompok
RPL_Kelompok
 
KONSEP DAN PENERAPAN MODEL-MODEL PROSES PEMBANGUNAN PERANGKAT LUNAK
KONSEP DAN PENERAPAN MODEL-MODEL PROSES  PEMBANGUNAN PERANGKAT LUNAK KONSEP DAN PENERAPAN MODEL-MODEL PROSES  PEMBANGUNAN PERANGKAT LUNAK
KONSEP DAN PENERAPAN MODEL-MODEL PROSES PEMBANGUNAN PERANGKAT LUNAK
 
Software testing
Software testingSoftware testing
Software testing
 
Tahapan pengembangan perangkat lunak
Tahapan pengembangan perangkat lunakTahapan pengembangan perangkat lunak
Tahapan pengembangan perangkat lunak
 
Pertemuan 4 Strategi Testing
Pertemuan 4  Strategi TestingPertemuan 4  Strategi Testing
Pertemuan 4 Strategi Testing
 
Model quality management sofwtware
Model quality management sofwtwareModel quality management sofwtware
Model quality management sofwtware
 
Testing dan implemetasi sistem 3
Testing dan implemetasi sistem 3Testing dan implemetasi sistem 3
Testing dan implemetasi sistem 3
 
software testing (black box testing) -- irma darmayanti
software testing (black box testing) -- irma darmayantisoftware testing (black box testing) -- irma darmayanti
software testing (black box testing) -- irma darmayanti
 
Ch 02 - Hubungan Software Development Life Cycle (SDLC) dan Testing
Ch 02 - Hubungan Software Development Life Cycle (SDLC) dan TestingCh 02 - Hubungan Software Development Life Cycle (SDLC) dan Testing
Ch 02 - Hubungan Software Development Life Cycle (SDLC) dan Testing
 
Strategi pengujian perangkat lunak
Strategi pengujian perangkat lunakStrategi pengujian perangkat lunak
Strategi pengujian perangkat lunak
 
Model Pengembangan Perangkat Lunak
Model Pengembangan Perangkat LunakModel Pengembangan Perangkat Lunak
Model Pengembangan Perangkat Lunak
 
Bug management
Bug managementBug management
Bug management
 

More from DWC

Kkm tik
Kkm tikKkm tik
Kkm tikDWC
 
Tes kemampuan bahasa verbal sltp n 1
Tes kemampuan bahasa verbal sltp n 1Tes kemampuan bahasa verbal sltp n 1
Tes kemampuan bahasa verbal sltp n 1DWC
 
Metode A* star
Metode A* starMetode A* star
Metode A* starDWC
 
Jelaskan peas WUMPUS AGENT
Jelaskan peas WUMPUS AGENTJelaskan peas WUMPUS AGENT
Jelaskan peas WUMPUS AGENTDWC
 
Peranan guru di sekolah dan masyarakat
Peranan guru di sekolah dan masyarakatPeranan guru di sekolah dan masyarakat
Peranan guru di sekolah dan masyarakatDWC
 
Jurnal umum
Jurnal umum Jurnal umum
Jurnal umum DWC
 
Coding
CodingCoding
CodingDWC
 
Testing dan implementasi
Testing dan implementasiTesting dan implementasi
Testing dan implementasiDWC
 

More from DWC (8)

Kkm tik
Kkm tikKkm tik
Kkm tik
 
Tes kemampuan bahasa verbal sltp n 1
Tes kemampuan bahasa verbal sltp n 1Tes kemampuan bahasa verbal sltp n 1
Tes kemampuan bahasa verbal sltp n 1
 
Metode A* star
Metode A* starMetode A* star
Metode A* star
 
Jelaskan peas WUMPUS AGENT
Jelaskan peas WUMPUS AGENTJelaskan peas WUMPUS AGENT
Jelaskan peas WUMPUS AGENT
 
Peranan guru di sekolah dan masyarakat
Peranan guru di sekolah dan masyarakatPeranan guru di sekolah dan masyarakat
Peranan guru di sekolah dan masyarakat
 
Jurnal umum
Jurnal umum Jurnal umum
Jurnal umum
 
Coding
CodingCoding
Coding
 
Testing dan implementasi
Testing dan implementasiTesting dan implementasi
Testing dan implementasi
 

Recently uploaded

Tina fitriyah - Uji Sampel statistik.pptx
Tina fitriyah - Uji Sampel statistik.pptxTina fitriyah - Uji Sampel statistik.pptx
Tina fitriyah - Uji Sampel statistik.pptxTINAFITRIYAH
 
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptx
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptxAKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptx
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptxHeriyantoHeriyanto44
 
Workshop penulisan buku (Buku referensi, monograf, BUKU...
Workshop penulisan buku                       (Buku referensi, monograf, BUKU...Workshop penulisan buku                       (Buku referensi, monograf, BUKU...
Workshop penulisan buku (Buku referensi, monograf, BUKU...Riyan Hidayatullah
 
Modul Ajar Informatika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Informatika Kelas 11 Fase F Kurikulum MerdekaModul Ajar Informatika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Informatika Kelas 11 Fase F Kurikulum MerdekaAbdiera
 
PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024MALISAAININOORBINTIA
 
Buku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfBuku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfWahyudinST
 
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.ppt
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.pptP_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.ppt
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.pptAfifFikri11
 
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.aechacha366
 
Modul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaunModul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaunnhsani2006
 
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimAsi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimNodd Nittong
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxLeniMawarti1
 
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdfsandi625870
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxFardanassegaf
 
Diagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran BerdifferensiasiDiagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran BerdifferensiasiOviLarassaty1
 
Materi pembelajaran tentang MISIOLOGI.pptx
Materi pembelajaran tentang MISIOLOGI.pptxMateri pembelajaran tentang MISIOLOGI.pptx
Materi pembelajaran tentang MISIOLOGI.pptxoperatorsttmamasa
 
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2noviamaiyanti
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxLeniMawarti1
 
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxSKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxg66527130
 
Program Roots Indonesia/Aksi Nyata AAP.pdf
Program Roots Indonesia/Aksi Nyata AAP.pdfProgram Roots Indonesia/Aksi Nyata AAP.pdf
Program Roots Indonesia/Aksi Nyata AAP.pdfwaktinisayunw93
 
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdf
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdfAKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdf
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdfHeriyantoHeriyanto44
 

Recently uploaded (20)

Tina fitriyah - Uji Sampel statistik.pptx
Tina fitriyah - Uji Sampel statistik.pptxTina fitriyah - Uji Sampel statistik.pptx
Tina fitriyah - Uji Sampel statistik.pptx
 
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptx
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptxAKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptx
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pptx
 
Workshop penulisan buku (Buku referensi, monograf, BUKU...
Workshop penulisan buku                       (Buku referensi, monograf, BUKU...Workshop penulisan buku                       (Buku referensi, monograf, BUKU...
Workshop penulisan buku (Buku referensi, monograf, BUKU...
 
Modul Ajar Informatika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Informatika Kelas 11 Fase F Kurikulum MerdekaModul Ajar Informatika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Informatika Kelas 11 Fase F Kurikulum Merdeka
 
PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024PAMPHLET PENGAKAP aktiviti pengakap 2024
PAMPHLET PENGAKAP aktiviti pengakap 2024
 
Buku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfBuku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdf
 
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.ppt
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.pptP_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.ppt
P_E_R_I_L_A_K_U__K_O_N_S_E_L_O_R__v.1.ppt
 
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
 
Modul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaunModul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaun
 
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimAsi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
 
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
 
Diagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran BerdifferensiasiDiagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran Berdifferensiasi
 
Materi pembelajaran tentang MISIOLOGI.pptx
Materi pembelajaran tentang MISIOLOGI.pptxMateri pembelajaran tentang MISIOLOGI.pptx
Materi pembelajaran tentang MISIOLOGI.pptx
 
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
 
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxSKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
 
Program Roots Indonesia/Aksi Nyata AAP.pdf
Program Roots Indonesia/Aksi Nyata AAP.pdfProgram Roots Indonesia/Aksi Nyata AAP.pdf
Program Roots Indonesia/Aksi Nyata AAP.pdf
 
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdf
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdfAKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdf
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdf
 

Testing dan implementasi

  • 1. TUGAS TESTING DAN IMPLEMENTASI SOFTWARE Oleh FATONI 10029032 STMIK DHARMA BAKTI WACANA METRO METRO PUSAT 2011 1
  • 2. KATA PENGANTAR Puji syukur kami panjatkan kehadirat Allah SWT yang telah memberikan rahmat dan hidayah-Nya, sehingga penulis dapat menyelesaikan Tugas Makalah Testing dan Implementasi Software. Selama tugas makalah ini banyak kesulitan yang dihadapi, akan tetapi berkat bimbingan, petunjuk serta bantuan dari berbagai pihak. Penulis mengucapkan terima kasih kepada : 1. Surono, S.Kom. selaku dosen Testing dan Implementasi. 2. Seluruh pihak yang dengan senang hati mau berbagi ilmu pengetahuan dan informasi melalui media internet dan lainnya. Terima kasih, karena itu sangat membantu sekali dan membuka cakrawala pengetahuan yang baru bagi penulis. Penulis menyadari bahwa tugas makalah ini masih jauh dari kata sempurna. Oleh karena itu, mohon maaf apabila ada kesalahan-kesalahan dalam penyajian tugas ini. Semoga tugas makalah ini dapat memberikan manfaat dan kontribusi kepada perkembangan ilmu pengetahuan. Penulis 2
  • 3. BAB I PENGERTIAN DASAR TESTING DAN IMPLEMENTASI 1.1 Latar Belakang SDLC (Software Development Life Cycle) berarti sebuah siklus hidup pemngembangan perangkat lunak yang terdiri dari beberapa tahapan-tahapan yang sangat penting dalam keberadaan perangkat lunak yang dilihat dari segi pengembangannya. Dalam Tahapan SDLC terdiri dari beberapa tahapan-tahapan berdasarkan analisa kebutuhan yang ada . Dimulai dari analisa kebutuhan perangkat lunak akan dibuat terlebih dahulu desain dari kebutuhan tersebut untuk mempermudah dalam pengerjaannya. Kemudian segala kebutuhan tersebut di implementasikan dengan dua tahap yaitu tahap analisa dan tahap evaluasi (User Acceptance Test). Setelah melakukan implementasi, maka proses tersebut akan dikembalikan kembali ke dalam tahap desain untuk pengembangan kembali perangkat lunak ke versi yang terbaru. Proses Tahapan SDLC yang paling sering digunakan adalah : 1. Perencanaan: Mempelajari konsep sistem dan permasalahan yang hendak diselesaikan. apakah sistem baru tersebut realistis dalam masalah pembiayaan, waktu, serta perbedaan dengan sistem yang ada sekarang. 2. Analisis Sistem: Menganalisis konsep sistem, permasalahan dan keperluan yang hendak dibuat. 3. Desain : Mendesain sistem teknologi baru untuk permasalahan yang sama. 3
  • 4. 4. Kon struksi : Perbaikan terhadap produk yang memiliki kesalahan/kerusakan 5. Implementasi software yang telah diuji dan siap diimplementasikan kedalam sistem pengguna/ sudah siap diterapkan. 6. Maintenance: sistem yang telah diimplemantasikan serta dapat mengikuti perkembangan dan perubahan apapun yang terjadi guna meraih tujuan penggunaannya 1.2 Implementasi Perangkat Lunak Hasil Rancangan detail yang ditranslasikan ke dalam suatu bahasa pemrograman, proses translasi dilanjutkan bila suatu kompiler menerima source code sebagai masukan dan mengkasilkan object code yang akan diterjemahkan menjadi machine code. Bahasa pemrograman adalah alat yang digunakan untuk komunikasi anatara manusia dan komputer Pemilihan bahasa pemrograman didasarkan atas : 1. Lingkup aplikasi 2. Algortima dan kompleksitas 3. Lingkungan pemrograman 4. Performansi 5. Struktur data 6. Pengetahuan pemrogram 7. Ketersediaan komputer 1.3 Testing perangkat lunak Pengertian Testing perangkat lunak adalah proses menjalankan dan mengevaluasi sebuah perangkat lunak secara manual maupun otomatis untuk menguji apakah perangkat lunak sudah memenuhi persyaratan atau belum untuk menentukan perbedaan antara hasil yang diharapkan dengan hasil sebenarnya. 4
  • 5. 1.4 Prinsip pengujian yang harus diperhatikan. • Dapat dilacak hingga ke persyaratan atau dokumen SRS • Pengujian harus direncanakan sebelum pelaksanaan pengujian • Pengujian harus dimulai dari hasl yang kecil, diteruskan ke hal-hal yang besar. • Pengujian yang berlebihan tidak akan mungkin dapat dilaksanakan • Pengujian sebaiknya dilakukan oleh pihak ketiga. 1.5 Tujuan Pengujian • Menilai apakah perangkat lunak yang dikembangkan telah memenuhi kebutuhan pemakai. • Menilai apakah tahap pengembangan perangkat lunak telah sesuai dengan metodologi yang digunakan. • Membuat dokumentasi hasil pengujian yang menginformasikan kesesuaian perangkat lunak yang diuji dengan spesifikasi yang telah ditentukan. 1.6 Strategi Pengujian 1.6.1 Pengujian unit program Pengujian difokuskan pada unit terkecil dari suatu modul program. Dilaksanakan dengan menggunakan driver dan stub. Driver adalah suatu program utama yang berfungsi mengirim atau menerima data kasus uji dan mencetak hasil dari modul yang diuji. Stub adalah modul yang menggantikan modul sub-ordinat dari modul yang diuji. 1.6.2 Pengujian integrasi Pengujian terhadap unit-unit program yang saling berhubungan (terintegrasi) dengan fokus pada masalah interfacing. Dapat dilaksanakan secara top-down integration atau bottom-up integration. 5
  • 6. 1.6.3 Pengujian validasi Pengujian ini dimulai jika pada tahap integrasi tidak ditemukan kesalahan. Suatu validasi dikatakan sukses jika perangkat lunak berfungsi pada suatu cara yang diharapkan oleh pemakai. 1.6.4 Pengujian sistem Pengujian yang dilakukan sepenuhnya pada sistem berbasis komputer. Recovery testing Pengujian dilakukan dimana sistem diusahakan untuk gagal, kemudian diuji normalisasinya. Security testing Dilakukan untuk menguji mekanisme proteksi Stess testing Pengujian yang dirancang untuk menghadapkan suatu perangkat lunak kepada situasi Yang tidak normal. 6
  • 7. BAB II TAHAP TESTING DAN IMPLEMENTASI 2.1 Tahap-tahap Pengujian • Memeriksa apakah sistem sudah berlaku dengan benar atau belum saat digunakan oleh user. • Memperkirakan apakah sistem dapat menanggulangi segala kondisi dan data mainstream. • Memeriksa performansi behaviour dari sistem. Misal berapa lama waktu yang diperlukan sistem untuk mengerjakan suatu tugas yang diberikan. • Menguji volume, stress dan storage untuk meeriksa performance dibawah kondisi ekstrim seperti jumlah input yang besar, high speed input, jumlah user yang banyak serta meningkatnya jumlah aktivitas secara tiba-tiba. • Semua perhitungan diperiksa ketepatannya dengan data dan kondisi yang telah diperkirakan maupun tidak. • Menguji error handling dan recovery dari sistem seperti memeriksa bahwa akan keluar pesan error yang tepat pada setiap kondisi dan pemulihan yang baik setelah sistem mengalami fatal errror. • Memeriksa kelayakan tingkat keamanan pada sistem agar user yang tidak berwenang tidak dapat memperoleh akses ke sistem. Tipe-tipe system testing – volume : memfokuskan untuk input yang besar – usability : mengukur reaksi user ( skala 1-10) – performance : mengukur kecepatan pada beberapa keadaan – configurasi : mengkonfogurasi untuk bermacam-macam hardware atau software – compatibility : komplabiliti dengan aplikasi lain ( contoh: mengukur waktu adaptasi) 7
  • 8. – reliability/availability : mengukur ketahanan pada periode waktu yang lama – security – resource usage : mengukur penggunaan RAM, ruang disk, dll – installability : di install pada bermacam-macam keadaan (mengukur waktu install) – recoverability : mengukur waktu untuk me-recover – serviceability : mengukur waktu service – load/stress: untuk data extreme dan traffic 2.2 Pengujian Tahap Analisis ditekankan pada validasi terhadap kebutuhan, untuk menjamin bahwa kebutuhan telah dispesifikasikan dengan benar. Tujuan pengujian pada tahap ini adalah untuk mendapatkan kebutuhan yang layak dan untuk memastikan apakah kebutuhan tersebut sudah dirumuskan dengan baik. Faktor-faktor pengujian yang dilakukan meliputi : a. Kebutuhan yang berkaitan dengan metodelogi b. Pendefinisian spesifikasi fungsional c. Penentuan spesifikasi kegunaan d. Penentuan kebutuhan portabilitas e. Pendefinisian antar muka sistem. 2.3 Pengujian Tahap Perancangan Bertujuan untuk menguji struktur perangkat lunak yang diturunkan dari kebutuhan - Kebutuhan yang bersifat umum dirinci menjadi bentuk yang lebih spesifik . Faktor-faktor pengujian tahap perancangan meliputi : • Perancangan yang berkaitan dengan kebutuhan • Kesesuaian perancangan dengan metodologi dan teori. 8
  • 9. Portabilitas rancangan • Perancangan yang dirawat • Kebenaran rancangan berkaitan dengan fungsi dan aliran data. • Kelengkapan perancangan antar muka. 2.4 Pengujian Tahap Implementasi Merupakan pengujian unit-unit yang dibuat sebelum diintegrasikan menjadi aplikasi keseluruhan. Faktor-faktor pengujian tahap implementasi meliputi : • Kendali integritas data • Kebenaran program • kemudahan pemakaian • Sifat coupling • Pengembangan prosedur operasi. 2.5 Pengujian Tahap Testing : untuk menilai apakah spesifikasi program telah ditulis menjadi instruksi-instruksi yang dapat dijalankan pada mesin. Selain itu, juga untuk menilai apakah instruksi yang ditulis tersebut telah sesuai dengan spesifikasi program. Faktor-faktor pengujian tahap ini meliputi : • Pengujian fungsional • Dukungan manual • Kemudahan operasi. 2.6 Pengujian dengan Kasus Uji Dilakukan meliputi pengujian unit (berupa prosedur atau fungsi) dan pengujian sistem. Dalam pengujian unit, unit-unit yang diuji meliputi unit-unit yang ada dalam sistem. Sedangkan pengujian sistem dilakukan terhadap sistem secara keseluruhan. Setiap pengujian dilakukan dengan menggunakan berbagai data masukan, baik data yang valid maupun tidak. 9
  • 10. BAB III TEKNIK PENGUJIAN 3.1 Teknik Pengujian Ada Banyak teknik pengujian yang dapat digunakan untuk menguji perangkat lunak, seperti : 1. Pengujian Black Box 2. Pengujian White Box 3.1.1 Pengujian Black Box Digunakan untuk menguji fungsi-fungsi khusus dari perangkat lunak yang dirancang. Kebenaran perangkat lunak yang diuji hanya dilihat berdasarkan keluaran yang dihasilkan dari data atau kondisi masukan yang diberikan untuk fungsi yang ada tanpa melihat bagaimana proses untuk mendapatkan keluaran tersebut. Dari keluaran yang dihasilkan, kemampuan program dalam memenuhi kebutuhan pemakai dapat diukur sekaligus dapat diiketahui kesalahan-kesalahannya. Beberapa jenis kesalahan yang dapat diidentifikasi : • Fungsi tidak benar atau hilang • Kesalahan antar muka • Kesalahan pada struktur data (pengaksesan basis data) • Kesalahan inisialisasi dan akhir program • Kesalahan performasi. 10
  • 11. requirements output input events Contoh Black Box: A. Strategi OO Testing • Unit Testing  Pengujian class/object • Integration Testing  object integration testing • System Testing 11
  • 12. Pengujian class/object • Encapsulated state  Memeriksa interaksi method-method dengan data obyek • Interaksi antar method  Memeriksa interaksi method-method dari sebuah obyek • Pewarisan dan polimorfisme B. Unit Testing • Tahapan testing yang paling awal. • Tahap selanjutnya terdiri dari integration testing dan system testing • Biasanya unit didefinisikan sebagai: – Suatu fungsi atau prosedur tunggal yang kohesif – Segmen terkecil dari kode program yang bisa dikompile secara terpisah. – Sebuah fungsi yang pas pada suatu halaman tunggal. – Kode yang bisa ditulis oleh seseorang dalam suatu kurun waktu. • Definisi yang biasa dipakai yaitu definisi pada point pertama. • Input untuk proses test planning terdiri dari requirement dan detailed design. Output dari proses test planning adalah unit test plan. • Tahap selanjutnya adalah akuisisi data input dan output yang berasosiasi dengan masing-masing test. Hasil dari tahap ini dinamakan test set. • Test di eksekusi. 12
  • 13. C. Pengujian Method • Memverifikasi operasi pada nilai normal parameter (sebuah black box test yang berdasarkan pada kebutuhan unit) • Memverifikasi operasi pada nilai limit parameter (black box) • Memverifikasi operasi nilai diluar batas nilai parameter (black box) • Memastikan bahwa semua instruksi di eksekusi (statement coverage) • Cek semua path, termasuk semua cabang (decision coverage) • Cek semua penggunaan object yang dipanggil • Memverifikasi penanganan dari semua struktur data • Memverifikasi penanganan semua file • Cek terminasi normal dari semua loop ( part of correctness proof) • Cek terminasi abnormal dari semua loop • Cek terminasi normal dari semua rekursif • Cek terminasi abnormal dari semua rekursif • Memverifikasi penanganan semua kondisi error • Cek timing dan sinkronisasi • verifikasi semua ketergantungan hardware D. Class Testing • Kombinasikan penggunaan method – biasanya 2-5 – pilih rangkaian pertama yang paling umum – masukan rangkaian yang mungkin menyebabkan error • Fokuskan unit test pada masing-masing atribut – inisialisasi, lalu eksekusi rangkaian method yang dipengaruhinya • Verifikasi masing-masing invariant class tidak berubah • Verifikasi object transisi diantara state-state yang ada. – Rencanakan rangkaian state/transisisi – Set up object dalam inisial state dengan menyeting variable – Sediakan event pertama dan cek transisi yang terjadi E. Pengujian integrasi object • Menguji unit yang telah diuji secara tunggal bekerja secara baik pula setelah digabungkan pada sistem • Mereka akan digabungkan ke dalam suatu grup logis yang koheren untuk diuji kembali( subsistem ) • Saat subsistem tersebut berhasil bekerja dengan baik maka akan dilanjutkan dengan menggabungkannya dengan subsistem yang lain dan seterusnya sampai membentuk suatu sistem utuh yang teruji • Hal yang diperhatikan yaitu memeriksa semua unit apakah bekerja bersama dengan baik. • Penguji lebih mengkonsentrasikan pada interaksi unit daripada fungsionalitasnya 13
  • 14. F. Merancang dan Melakukan Integration Testing • Putuskan bagaimana dan dimana untuk menyimpan, menggunakan kembali dan mengkodekan integration test – tunjukan dalam project schedule • Ekesekusi unit-unit test sebanyak mungin sesuai dengan waktu yang tersedia • Gunakan test regresi • Pastikan kebutuhan pembangunan telah dispesifikasikan. • Gunakan use case yang harus diimplementasikan • Eksekusi system test G. Tahapan System Testing • Memeriksa apakah sistem sudah berlaku dengan benar atau belum saat digunakan oleh user. • Memperkirakan apakah sistem dapat menanggulangi segala kondisi dan data mainstream. • Memeriksa performansi behaviour dari sistem. Misal berapa lama waktu yang diperlukan sistem untuk mengerjakan suatu tugas yang diberikan. • Menguji volume, stress dan storage untuk meeriksa performance dibawah kondisi ekstrim seperti jumlah input yang besar, high speed input, jumlah user yang banyak serta meningkatnya jumlah aktivitas secara tiba-tiba. • Semua perhitungan diperiksa ketepatannya dengan data dan kondisi yang telah diperkirakan maupun tidak. • Menguji error handling dan recovery dari sistem seperti memeriksa bahwa akan keluar pesan error yang tepat pada setiap kondisi dan pemulihan yang baik setelah sistem mengalami fatal errror. • Memeriksa kelayakan tingkat keamanan pada sistem agar user yang tidak berwenang tidak dapat memperoleh akses ke sistem. 3.1.2 Pengujian White Box : 14
  • 15. Pengujian White Box digunakan untuk mengetahui cara kerja suatu perangkat lunak secara internal. Pengujian dilakukan untuk menjamin operasi-operasi internal sesuai dengan spesifikasi yang telah ditetapkan dengan menggunakan struktur kendali dari prosedur yang dirancang. Tujuan kita adalah menjamin semua statemen dan kondisi telah dieksekusi minimal sekali Pelaksanaan pengujian white box : a. Menjamim seluruh independent path dieksekusi paling sedikit satu kali. Independent path adalah jalur dalam program yang menunjukkan paling sedikit satu kumpulan proses ataupun kondisi baru. b. Menjalani logical decision pada sisi dan false c. Mengeksekusi pengulangan (looping) dalam batas-batas yang ditentukan d. Menguji struktur data internal Contoh Testing White Box: 15
  • 16. A. Condition Testing Condition Testing bertujuan untuk mengeksekusi semua kondisi lojik dari sebuah modul program Dapat mendefinisikan Relational Expression (E1 op E2) : dimana E1 dan E2 adalah arithmetic expression Simple Condition: variabel boolean atau relational expression, mungkin diawali dengan operator NOT Compound condition: terdiri dari dua atau lebih simple conditions,operator boolean, dan tanda kurung Boolean Expression: kondisi tanpa relational expression Tipe kesalahan pada sebuah kondisi dapat mencakup: boolean operator error (adanya incorrect/missing/extra boolean operator) boolean variable error boolean parenthesis (tanda kurung) error relational operator error arithmetic expression error Metode condition testing fokus pada pengujian setiap kondisi yang ada pada program, Keuntungan strategi condition testing Memperkirakan pengujian berdasarkan kondisi adalah hal yang simpel Cakupan pengujian dapat mengarahkan pada penambahan kasus uji untuk sebuah program Beberapa strategi yang termasuk condition testing Branch Testing Domain Testing Branch and Relational Operator Testing – menggunakan kondisi sebagai batasan Contoh: C1 = B1 & B2 dimana B1, B2 adalah boolean conditions Batasan kondisi D1, D2 dimana D1 dan D2 dapat bernilai true (t) atau false (f) Cabang dan operator relasi membutuhkan batasan-batasan { (t,t), (f,t), (t,f) } harus dipenuhi untuk eksekusi C1 Cakupan batasan-batasan menjamin pendekteksian kesalahan pada operator relasional (relational operator errors) B. Branch Testing 16
  • 17. Branch testing adalah strategi pengujian berbasis kondisi yang paling simpel, Untuk setiap kondisi percabangan C, maka setiap cabangnya harus dieksekusi minimal sekali (yang bernilai true atau false) C. Data Flow Testing Metode Data Flow testing memilih aliran tes dari program berdasarkan lokasi pendefinisian dan penggunaan variabel dalam program dengan Data flow testing Setiap statemen di dalam program diasumsikan diisi dengan angka yang unik dan diasumsikan tidak ada fungsi yang mengubahnya Defs( s ) = { x | statemen S berisi pendefinisian X } Use( s ) = { x | statemen S berisi penggunaan X } DU Chain (Definition - Use Chain) dari variabel X dengan bentuk {X, S, S’}, dimana S, S’ adalah jumlah statemen, X di dalam Defs(S) dan Defs(S’). Rangkaian yang mungkin lainnya: DD (Definition-Definition Chain) – harus dihindari UU (Use-Use Chain) - common chain UD (Use-Definition Chain) - common chain Salah satu strategi yang simpel adalah Strategi DU Testing Strategi ini menyatakan bahwa setiap DU chain harus dilalui minimal sekali 17
  • 18. D. Loop Testing Loop adalah dasar dari banyak algoritma. Loop dapat didefinisikan menjadi berikut: Untuk menguji: Simple Loops dengan n kali: 1. Abaikan perulangan 2. Masuki perulangan sekali 3. Masuki perulangan dua kali 4. Masuki perulangan m kali dimana m<n. 5. Masuki perulangan (n-1), n, dan (n+1) kali Nested Loops 1. Mulai dengan perulangan yang ada di dalam, set semua perulangan ke nilai minimum 2. Uji sebagai simple loop untuk perulangan yang ada di dalam 3. Pengujian dari dalam ke luar 4. Lanjutkan sampai semua loop diuji Concatenated Loops 1. Jika perulangan independen, gunakan pengujian simple loop 2. Jika perulangan tidak saling independen, gunakan nested loops. Unstructured loops 1. Jangan diuji – harus didesain ulang 18
  • 19. BAB IV HASIL TESTING 4.1 Standar ANSI/IEEE untuk test dokumentasi • introduction • test plan : item dalam test,ruang lingkup, pendekatan, resource, jadwal, personel • test design: item yang ditest, pendekatan, rencana detail • test case : kumpulan input dan event • test procedures : langkah-langkah untuk menyeting dan mengeksekusi test case • test item transmittal report : item-item dalam test, lokasi fisik dari hasil, orang yang bertanggung jawab untuk transmitting • test log : kronologi record, lokasi fisik dari hasil, nama penguji • test incident report : dokumentasi dari setiap event yang terjadi selama test, yang membutuhkan investigasi lebih lanjut • test summary report : kesimpulan-kesimpulan dari keseluruhan point-point di atas 4.2 Testing Tools • Testing bervolume besar biasanya membutuhkan penggunaan tool-tool otomatis. Jacobson menyarankan bahwa 75% dari test lebih baik dilakukan secara otomatis daripada dilakukan secara manual. • Kemampuan dari tools otomatis system test: – merekam aksi mouse dan keyboard untuk memungkinkan pengulangan pemutaran kembali – jalankan test script secara berulang-ulang – memungkinkan untuk merekam hasil test • merekam waktu eksekusi • merekam run time error • membuat dan mengatur regression test • menghasilkan test report • menghasilkan test data • merekam penggunaan memory • mengatur/mengelola test case • analisa keseluruhan 19
  • 20. 4.3 BLACK BOX TESTING Proses pengujian kotak hitam untuk blok aplikasi yang ditunjukkan pada Gambar Gambar . Black box testing process Pengujian Black Box Langkah Pengujian kotak hitam melibatkan pengujian antarmuka eksternal untuk memastikan bahwa kode tersebut memenuhi persyaratan fungsional dan nonfunctional. Berbagai langkah yang terlibat dalam pengujian kotak hitam adalah sebagai berikut: 1. Create test plans. Create prioritized test plans for black box testing. 2. Test the external interfaces. Test the external interfaces for various type of inputs using automated test suites, such as NUnit suites and custom prototype applications. 3. Perform load testing. Load test the application block to analyze the behavior at various load levels. This ensures that it meets all performance objectives that are stated as requirements. 4. Perform stress testing. Stress test the application block to analyze various bottlenecks and to identify any issues visible only under extreme load conditions, such as race conditions and contentions. 5. Perform security testing. Test for possible threats in deployment scenarios. Deploy the application block in a simulated target environment and try to hack the application by exploiting any possible weakness of the application block. 6. Perform globalization testing. Execute test cases to ensure that the application block can be integrated with applications targeted toward locales other than the default locale used for development. 20
  • 21. 4.4 WHITE BOX TESTING Gambar. White box testing process White box testing involves the following steps: 1. Create test plans. Identify all white box test scenarios and prioritize them. 2. Profile the application block. This step involves studying the code at run time to understand the resource utilization, time spent by various methods and operations, areas in code that are not accessed, and so on. 3. Test the internal subroutines. This step ensures that the subroutines or the nonpublic interfaces can handle all types of data appropriately. 4. Test loops and conditional statements. This step focuses on testing the loops and conditional statements for accuracy and efficiency for different data inputs. .5 Perform security testing. White box security testing helps you understand possible security loopholes by looking at the way the code handles security. 21
  • 22. DAFTAR PUSTAKA • Britton, Carol dan Doake, Jill, “Object –Oriented System Development: A gentle Introduction” , Singapore: McGraw-Hill, Inc., 2001 • Braude, Eric J.,”Software Engineering: An Object Oriented Perspective”, United State of America: John Wiley & Sons,Inc., 2000 • Bahrami, Ali, “Object Oriented System Development”, Singapore: McGraw-Hill, Inc., 1999 • Pressman, Roger S.,The 5th edition of Software Engineering: A Practitioner's Approach,McGraw-Hill. • Sommerville, Ian, Software Engineering, 6th edition, Pearson Education, 2001 • http://www.cetus-links.org/oo_testing.html • http://www.testing.com/writings/1-fault.htm • http://www.rbsc.com/pages/who_who.html 22