Apa itu Pengujian Integrasi?

Pengujian integrasi adalah fase pengembangan dan pengujian perangkat lunak di mana beberapa unit atau modul dalam konfigurasi program atau perangkat keras disatukan dan diuji. Berbagai unit ini biasanya telah diuji secara individual untuk memastikan bahwa setiap unit berfungsi dengan baik sendiri; fase pengujian ini mengintegrasikan unit-unit yang berbeda ini ke dalam sistem yang lebih besar. Hal ini dapat dilakukan dalam pengembangan perangkat lunak untuk memastikan bahwa aspek yang berbeda dari program yang lebih besar dapat bekerja sama atau dalam pengujian perangkat keras untuk memastikan fungsionalitas yang tepat antara unit yang berbeda. Pengujian integrasi adalah fase utama pengujian karena banyak bug dapat ditemukan dan versi rilis awal dari keseluruhan perangkat lunak atau perangkat keras dapat dikembangkan.

Juga disebut sebagai integrasi dan pengujian, atau I&T, pengujian integrasi biasanya dilihat sebagai fase pengujian utama kedua. Fase pertama disebut pengujian unit dan difokuskan terutama pada pengujian unit individu atau bagian dari program atau sistem yang lebih besar untuk memastikan bahwa setiap unit berfungsi sendiri. Unit-unit terpisah ini disatukan dalam pengujian integrasi, setelah masing-masing lulus pengujian unit, untuk kemudian memastikan bahwa mereka dapat bekerja sama dalam kelompok yang lebih besar. Setelah itu, mereka biasanya akan disatukan dalam sistem atau program lengkap yang sedang dikembangkan dan diuji sebagai bagian dari sistem lengkap itu, yang disebut pengujian sistem.

Ada banyak cara untuk melakukan pengujian integrasi, meskipun ada beberapa metode umum yang biasanya digunakan. Pengujian bottom-up cukup umum dan biasanya melibatkan pengujian berbagai aspek sistem terintegrasi yang dimulai dengan tingkat sistem yang lebih rendah. Setelah aspek “bawah” dari sistem ini lulus pengujian, pengujian bergerak “naik” ke aspek yang lebih penting. Bentuk pengujian integrasi top-down juga dapat dilakukan, di mana level tertinggi dari suatu sistem diuji terlebih dahulu dan prosesnya terus bergerak “turun” ke level yang lebih rendah.

Salah satu masalah utama dengan dua jenis pengujian integrasi ini, bagaimanapun, adalah bahwa tidak satu pun dapat dengan mudah membuat rilis awal produk dengan fungsionalitas dasar. Jenis rilis versi alfa ini sangat penting untuk peluang pengujian yang lebih besar, sehingga pendekatan lain biasanya harus diambil untuk memungkinkan rilis semacam itu. Salah satu pendekatan tersebut adalah bentuk pengujian “big bang” di mana semua bagian dari sistem terintegrasi diuji secara bersamaan. Ini bisa menguntungkan jika ada sedikit masalah atau bug dengan perangkat lunak yang diuji, tetapi bisa sulit untuk menunjukkan masalah tertentu jika terlalu banyak.

Ada juga jenis pengujian integrasi yang disebut sebagai “pengujian sandwich” yang berupaya meringankan beberapa masalah ini. Pada dasarnya, jenis pengujian ini dimulai dengan pengujian top-down dan bottom-up secara bersamaan, dan kedua bentuk pengujian secara efektif “bertemu di tengah”. Ini memungkinkan pengujian awal sistem logika dasar, manfaat pengujian top-down, dan mengidentifikasi masalah yang lebih kecil sebelumnya, seperti pengujian bottom-up. Pengujian tersebut juga dapat lebih cepat menghasilkan versi rilis awal produk untuk pengujian skala yang lebih luas atau demonstrasi media lanjutan dari produk.