Anda di halaman 1dari 35

PENGUJIAN

PERANGKAT LUNAK
MATERI 7 : INTEGRATION TESTING

DOSEN : MEI PURWENI, S.KOM., M.ENG


MATERI
Materi :
1. Integration Testing
➤ Top-Down
➤ Bottom-Up
➤ Sandwich
➤ Big Bang
➤ Regresi
2. System Testing
STRATEGY TESTING
Hierarchy of Testing
INTEGRATION TESTING
What is Integration testing?

Integration Testing adalah suatu teknik yang sistematis untuk


pembangunan struktur program, dimana pada saat bersamaa
melakukan testing untuk mendapatkan errors yang diasosiasikan
dengan interface.
INTEGRATION TESTING
How to do Integration testing?

Integrasi Testing ada 2 cara :


1. Integrasi non-inkremental
Integrasi ini dilakukan dengan cara semua modul digabung
seluruhnya. Setelah itu barulah dilakukan pengujian.
2. Integrasi inkremental
Integrasi ini dilakukan untuk membangun dan menguji interface
program dalam segmen-segmen kecil, sehingga kesalahan lebih
mudah diisolasi dan dibetulkan. Interface lebih mungkin untuk
diuji dengan lengkap.
INTEGRATION TESTING APPROACH
1. Integrasi non-inkremental
➤ Big Bang
2. Integrasi inkremental
➤ Top down
➤ Bottom Up
➤ Sandwich
INTEGRATION BIG BANG
Big Bang yaitu suatu pendekatan dengan menggabungkan
komponen-komponen secara bersamaan hingga terbentuk suatu
program.
INTEGRATION BIG BANG
Testing dilakukan pada keseluruhan program secara bersamaan,
maka akan terjadi adalah sebuah kekacauan yang menghasilkan
sekumpulan errors namun sulit untuk dilakukan perbaikan,
karena terjadi kompilasi saat melakukan isolasi terhadap penyebab
masalah.
Ditambah lagi dengan munculnya errors baru saat errors
sebelumnya dibenahi, sehingga menciptakan suatu siklus yang tak
ada hentinya.
INCREMENTAL INTEGRATION
Berikut ada beberapa strategi/pendekatan dalam integrasi inkremental :
1. Integrasi Top-Down
adalah pendekatan integrasi untuk membangun struktur program, dimana
modul-modul diintegrasikan dengan menggerakkan kebawah melalui
hirarkhi kontrol, dimulai dari modul kontrol utama (modul: menu utama).
Integrasi top-down ada 2 cara :
➤ cara vertikal
➤ cara horizontal
1. TOP DOWN INTEGRATION
In Top Down, Breadth First
➤ M1 tested with stubs for M2,
M3 and M4
➤ Then M1-M2 tested with stubs
for M3, M4, M5, and M6
➤ Then M1-M2-M3 tested with
stubs for M4, M5, M6, and M7
➤ ……..

Vertikal
1. TOP DOWN INTEGRATION

Horizontal
1. TOP DOWN INTEGRATION
Proses integrasi Top down ada lima langkah, yaitu:
1. Modul kendali utama digunakan sebagai penguji driver dan stub
ditambahkan pada semua modul yang secara langsung subordinat
terhadap modul kontrol utama.
2. Bergantung pada pendekatan integrasi yang dipilih, stub subordinat
diganti pada suatu saat dengan komponen yang sesungguhnya.
3. Pengujian dilakukan pada saat setiap komponen diintegrasikan.
4. Setelah menyelesaikan setiap rangkaian pengujian, stub lain
digantikan dengan komponen yang sesungguhnya.
5. Pengujian regresi dapat dilakukan untuk memastikan bahwa kesalah
baru belum dimunculkan.
1. TOP DOWN INTEGRATION
Advantages
➤ The SIT engineers continually observe system-level functions as the
integration process continue
➤ Isolation of interface errors becomes easier because of the incremental nature
of the top-down integration
➤ Test cases designed to test the integration of a module M are reused during
the regression tests performed after integrating other module
Disadvantages
➤ It may not be possible to observe meaningful system functions because of an
absence of lower level modules and the presence of stubs.
➤ Test case selection and stub design become increasingly difficult when stubs
lie far away from the top-level module.
2. BOTTOM UP INTEGRATION
➤ Adalah pendekatan integrasi untuk membangun struktur
program, dimana modul-modul diintegrasikan dimulai dari
modul-modul atomik yang ada di level bawah menuju keatas.
➤ Karena modul di integrasikan dari bawah ke atas, maka
pemrosesan yang diperlukan untuk modul subordinate ke suatu
yang diberikan akan selalu tersedia dan kebutuhan stub dapat
dieliminasi.
2. BOTTOM UP INTEGRATION
Integrasi bottom-up ada 2 cara :
➤ cara vertikal
➤ cara horizontal

Strategi integrasi Bottom up dapat diimplementasikan dengan langkah-langkah :


➤ Modul tingkat rendah digabungkan ke dalam cluster (build) yang melakukan
sub fungsi perangkat lunak spesifik.
➤ Driver (program control untuk pengujian) ditulis untuk mengordinasi input
dan output test case.
➤ Cluster diuji
➤ Driver diganti dan cluster digabungkan dengan menggerakkan keatas di dalam
struktur program.
2. BOTTOM UP INTEGRATION
In Bottom Up:
➤ M8 tested with drivers
➤ M5-M8 is tested with drivers
for M5
➤ M5-M6-M8 is tested with
drivers for M5-M6
➤ …….
2. BOTTOM UP INTEGRATION
2. BOTTOM UP INTEGRATION
Advantages
➤ One designs the behavior of a test driver by simplifying the behavior of
the actual module
➤ If the low-level modules and their combined functions are often invoked
by other modules, then it is more useful to test them first so that
meaningful effective integration of other modules can be done
Disadvantages
➤ Discovery of major faults are detected towards the end of the integration
process, because major design decision are embodied in the top-level
modules
➤ Test engineers can not observe system-level functions from a partly
integrated system. In fact, they can not observe system-level functions
until the top-level test driver is in place
3. SANDWICH INTEGRATION
➤ Disebut juga pendekatan kombinasi.
➤ Menggunakan Integrasi Top-down untuk tingkat yang lebih atas
dari suatu struktur program, dan digabungkan dengan Integrasi
Bottom-up untuk tingkat subordinat.
3. SANDWICH INTEGRATION
3. SANDWICH INTEGRATION
➤ Combination of bottom-up and top-down integrations
➤ System is viewed as layers
➤ Approach 1:
- Top-down approach is used for the top layer
- A bottom-up approach is used for the bottom layer
- Allows integration to begin early in the testing phase
- Does not test individual components thoroughly before
integration
3. SANDWICH INTEGRATION
➤ Approach 2:
- Start with a layer in the middle
- Use drivers to and stubs to check
- Work out from middle
- Allows integration to begin early in the testing phase
- Does not test individual components thoroughly before
integration
SYSTEM TESTING
SYSTEM TESTING
➤ Adalah serangkaian tes untuk memeriksa sistem berbasis komputer
secara penuh.
➤ Pengujian terhadap integrasi subsystem, yaitu keterhubungan antar sub
system.
➤ System testing terdiri dari:
- Functional Testing
- Structure Testing
- Performance Testing
- Acceptence Testing
- Installation Testing
FUNCTIONAL TESTING
➤ Pengujian fungsional didesain untuk memastikan bahwa
kebutuhan dan spesifikasi sistem telah dicapai.
➤ Prosesnya biasanya melibatkan pembuatan kondisi-kondisi
pengujian untuk digunakan dalam mengevaluasi kebenaran dari
aplikasi.
FUNCTIONAL TESTING
Tipe-tipe teknik yang sangat berguna dalam pengujian fungsional
antara lain:
1. Pengujian kebutuhan
2. Pengujian regresi
3. Pengujian penanganan-kesalahan
4. Pengujian dukungan-manual
5. Pengujian intersistem
6. Pengujian pengendalian
7. Pengujian paralel
STRUCTURE TESTING
➤ Pengujian struktural didesain untuk memverifikasi bahwa
sistem pengembangan dan program-program berkerja.
➤ Objektifnya adalah untuk meyakinkan bahwa desain produk
berstruktur kuat dan berfungsi dengan benar.
STRUCTURE TESTING
Teknik pengujian struktural adalah sebagai berikut :
1. Pengujian penekanan (stress)
2. Pengujian eksekusi
3. Pengujian recovery
4. Pengujian operasi
5. Pengujian pemenuhan (compliance)
6. Pengujian sekuriti
PERFORMANCE TESTING
➤ Dilakukan secara paralel dengan volume dan stress testing untuk
mengetahui kerja sistem (waktu respon, throughout rate) pada
beberapa kondisi proses dan konfigurasi.
➤ Dilakukan pada semua konfigurasi sistem perangkat keras dan
perangkat lunak.
Contoh : pada aplikasi Client-Server diujikan pada kondisi korporate
ataupun lingkungan sendiri (LAN vs Wan, Laptop vs Desktop).
➤ Menguji sistem dengan hubungannya sistem ke lain pada server yang
sama.
➤ Load Balancing Monitor
➤ Network Monitor
ACCEPTENCE TESTING
➤ Pengujian terakhir sebelum sistem dipakai oleh user.
➤ Melibatkan pengujian dengan data dari pengguna sistem.
➤ Biasa dikenal sebagai “alpha test” (“beta test” untuk software
komersial, dimana pengujian dilakukan oleh potensial
customer).
ACCEPTENCE TESTING
➤ Acceptence testing memiliki beberapa pendekatan, yaitu:
➤ Benchmark test
➤ Pilot testing
➤ Parallel testing
DUKUNGAN SUKSESNYA IMPLEMENTASI SI
Ada dua syarat yang diperlukan untuk kesuksesan implementasi :
➤ Dukungan manajemen ketika pengembangan sistem.
➤ Melibatkan user ketika proses pengembangan.

Pemahaman terhadap proses:


➤ Risiko
➤ Komitmen terhadap project
➤ Komitmen terhadap perubahan
➤ Pemahaman terhadap definisi dengan rencana project
➤ Harapan user yang realistis
FAKTOR KESUKSESAN IMPLEMENTASI SI
Faktor kesuksesan implementasi:
➤ Mengetahui sistem apa yang dipakai
➤ Kepuasan user akan sistem.
TERIMA KASIH

Anda mungkin juga menyukai