Dasar-Dasar Pengujian Perangkat Lunak

Pengujian perangkat lunak mencakup banyak bidang dan industri. Setiap proyek membawa tantangan baru. Sebelum mulai menguji, pahami sudut pandang klien dan bidang usahanya. Metode pengujian yang dibutuhkan pun bisa berbeda dari satu proyek ke proyek lain. Karena itu, pemahaman yang kuat tentang dasar pengujian merupakan syarat pertama untuk meraih hasil yang baik.

Mengapa Pengujian Perangkat Lunak Diperlukan?

Pengembang dapat tanpa sengaja menimbulkan kesalahan, cacat, atau bug. Perangkat lunak modern bersifat kompleks. Kesalahpahaman dapat menghasilkan logika dan kode yang keliru.

Pengujian menemukan masalah agar dapat diperbaiki dan kualitas perangkat lunak meningkat. Tujuannya adalah mengembangkan dan menyerahkan aplikasi yang bebas bug. Ketika perusahaan setuju untuk membuat perangkat lunak bagi klien, persyaratan hukum, kontrak, dan industri menentukan cara kerja. Perusahaan yang mengutamakan kualitas menjadikan pengujian salah satu praktik terbaiknya.

Sulit menentukan seberapa banyak pengujian yang cukup. Perencanaan yang cermat dan kasus uji yang dirancang dengan baik memungkinkan penyerahan perangkat lunak berkualitas tinggi.

Siapa yang Melakukan Pengujian Perangkat Lunak?

Siapa yang sebaiknya menguji perangkat lunak? Pengembang sering memeriksa kode mereka beberapa kali sebelum menyerahkannya. Meski demikian, cacat masih bisa tersisa karena sulit melihat kesalahan sendiri.

Penguji menilai perangkat lunak secara objektif dari sudut pandang klien, dengan berfokus pada spesifikasi dan persyaratan. Dengan begitu, penguji bisa menemukan hal yang terlewat oleh pengembang. Karena itu, pengujian sebaiknya selalu dilakukan oleh penguji yang independen dari pengembangan.

Memisahkan tim pengembangan dan tim pengujian juga punya kelemahan. Komunikasi bisa terhambat. Pengembang mungkin mengabaikan peninjauan kode karena menganggap kualitas sebagai tanggung jawab penguji. Akibatnya, beban kerja tim pengujian bertambah.

Terkadang pengembang saling menguji hasil kerja. Cara ini dikenal sebagai pengujian antarrekan atau buddy testing. Setiap tim pengembangan sebaiknya memiliki penguji khusus, dan sebuah proyek biasanya memiliki setidaknya satu tim pengujian khusus. Beberapa perusahaan membentuk tim terpisah untuk kegunaan, kinerja, keamanan, dan jenis pengujian lain. Perusahaan lain menyerahkan pekerjaan tersebut kepada perusahaan spesialis, penguji independen, atau konsultan.

Apa yang Sebenarnya Perlu Diuji?

Pahami persyaratan proyek dan kondisi nyata penggunaan perangkat lunak. Dengan begitu, Anda dapat menentukan apa yang perlu diuji dan menyusun strategi pengujian yang sesuai.

What Has to Be Tested?What Has toBe Tested?GUIAccessibilityDesignEfficiencyModularityCodeUserFriendlinessSecurity
Buka Diagram Ukuran Penuh

Apa yang Sebenarnya Perlu Diuji?

Kapan Pengujian Perangkat Lunak Dilakukan?

Memulai pengujian sejak awal membantu pengembang menyelesaikan pekerjaan tepat waktu dan menghemat waktu, uang, serta tenaga. Cacat yang ditemukan menjelang akhir pengembangan bisa mahal untuk diperbaiki. Bagi pengembangan menjadi beberapa tahap dan uji hasil setiap tahap sebelum melanjutkan. Ini membantu penyerahan tepat waktu dan meningkatkan hasil. Integrasi juga menjadi lebih mudah jika setiap modul sudah diuji secara terpisah berdasarkan spesifikasinya.

Seberapa Sering Kita Perlu Menguji?

Lakukan pengujian bersamaan dengan pengembangan dan cari sebanyak mungkin cacat pada tahap awal. Frekuensi pengujian bergantung pada kualitas yang Anda butuhkan. Temuan awal memungkinkan perubahan desain ketika masih mudah dan murah dilakukan. Perubahan besar menjadi lebih sulit dan mahal pada tahap berikutnya.

Continuous Software Testing CycleSoftwareTestingMeasureAnalyzeTestOptimizeRepeat
Buka Diagram Ukuran Penuh

Seberapa Sering Kita Perlu Menguji?

Apa Itu Standar Pengujian Perangkat Lunak?

Standar pengujian penting bagi pelanggan maupun pengembang. Pelanggan berinvestasi pada perangkat lunak dan ingin yakin bahwa kualitasnya sepadan dengan pembelian mereka.

Perusahaan bereputasi baik mengendalikan kualitas produk dengan mengikuti standar yang diakui secara publik. Kepatuhan terhadap standar tersebut memberi jaminan tentang produk dan perilaku yang diharapkan. Pelanggan pun lebih yakin bahwa perangkat lunak yang dibeli memenuhi standar kualitas yang dibutuhkan.

Bagi pengembang, standar membantu meningkatkan mutu produk akhir. Setelah memilih standar, perusahaan dapat memakai landasan itu pada proyek berikutnya tanpa memulai dari nol. Banyak standar pengujian membantu menilai kualitas dan meningkatkan efektivitas pengujian. Namun, tidak ada satu standar yang mencakup semua aspek pengujian perangkat lunak.

Standar yang mencakup pengujian sebagai bagian dari persyaratan yang lebih luas maupun standar yang secara khusus mendukung pengujian dapat menjadi panduan kerja.

Apa Itu Keterujian Perangkat Lunak?

Keterujian menggambarkan seberapa mudah suatu sistem perangkat lunak diuji. Nilai keterujian sejak awal untuk memperkirakan sumber daya yang dibutuhkan. Pengujian mengungkap cacat. Keterujian membantu mengenali bagian yang bisa menyembunyikan cacat. Keterujian tinggi mempermudah pengujian, sedangkan keterujian rendah menuntut upaya lebih besar. Pertimbangkan faktor berikut.

  1. Kemampuan dikendalikan memungkinkan Anda mengendalikan proses pengujian agar lebih optimal.
  2. Kemampuan diamati mengharuskan perilaku dan faktor yang memengaruhi hasil terlihat agar dapat diuji.
  3. Ketersediaan berarti Anda dapat mengakses sistem untuk mengujinya.
  4. Kesederhanaan desain yang konsisten, fitur yang mudah dipahami, dan praktik pemrograman yang sederhana mengurangi kerumitan pengujian. Perangkat lunak yang lebih kompleks lebih sulit diuji.
  5. Stabilitas memudahkan pengujian. Perubahan desain yang terlalu sering dapat mengganggunya.
  6. Informasi yang tersedia tentang perangkat lunak sangat memengaruhi efisiensi pengujian.

Perhatikan hubungan berikut antara keterujian dan cacat.

  1. Keterujian yang lebih tinggi mendukung pengujian yang lebih baik dan membantu mengurangi cacat.
  2. Keterujian yang lebih rendah dapat mengurangi kualitas pengujian dan menyisakan lebih banyak cacat dalam sistem.

Verifikasi dan Validasi Perangkat Lunak

Verifikasi dan validasi adalah dua jenis analisis yang berbeda. Validasi menanyakan apakah Anda membuat sistem yang tepat. Apakah sistem tersebut memenuhi persyaratan pelanggan?

Verifikasi menanyakan apakah Anda membuat sistem dengan benar. Fokusnya adalah kualitas rekayasa dan kepatuhan terhadap standar yang diwajibkan.

Validasi memastikan spesifikasi sesuai dengan kebutuhan pelanggan. Verifikasi memastikan pengembangan mengikuti standar kualitas perangkat lunak dan praktik rekayasa organisasi.

Software Verification and Software ValidationRequirementSpecification(Verification)User AcceptanceTesting (UAT)Functional Design(Verification)Functional Testing(Validation)Internal SystemDesign(Verification)Integration Testing(Validation)Code and Unit Testing(Verification and Validation)
Buka Diagram Ukuran Penuh

Verifikasi dan Validasi Perangkat Lunak

Beberapa pendekatan menempatkan verifikasi pada setiap tahap pengembangan, tetapi memusatkan validasi pada awal dan akhir, yaitu selama analisis persyaratan dan pengujian penerimaan. Pendekatan ini sulit diterapkan. Sulit menangkap semua persyaratan klien sejak awal, dan persyaratan sering berubah setelah pengembangan dimulai. Tim pengembangan juga dapat meminta perubahan. Karena itu, lakukan verifikasi dan validasi sepanjang pengembangan.

Penguji menggunakan verifikasi dan validasi, atau V&V, untuk menilai berbagai aspek kualitas perangkat lunak.

Pengujian Perangkat Lunak dan Debugging

Pengujian dan debugging memiliki tujuan berbeda. Pengujian mengungkap cacat. Debugging dilakukan setelah cacat ditemukan untuk menghilangkan penyebabnya.

Setelah penguji melaporkan cacat, pengembang menyelidiki akar penyebabnya. Mereka memeriksa modul terkait, menemukan masalah dalam kode, dan memperbaikinya. Debugging mengenali dan mengatasi penyebabnya secara bertahap.

Pahami kemungkinan penyebab cacat sebelum mencoba memperbaikinya. Debugging tanpa informasi yang cukup dapat menimbulkan cacat baru pada modul yang saling terhubung. Hindari mencoba perubahan tanpa rencana. Setelah diperbaiki, serahkan kembali modul kepada penguji untuk diuji secara menyeluruh.

  1. Pengujian mengungkap cacat. Debugging menemukan dan memperbaiki penyebabnya.
  2. Pengujian merupakan bagian penting dari pengembangan. Debugging menangani cacat yang terungkap melalui pengujian.
  3. Pengujian dimulai sejak tahap awal pengembangan. Debugging dimulai saat ada laporan cacat.
  4. Pengujian mencakup verifikasi dan validasi (V&V). Debugging menyelidiki dan memperbaiki penyebab cacat.

Apa Itu Cacat?

Cacat adalah penyimpangan dari spesifikasi persyaratan perangkat lunak. Cacat dapat muncul pada kode atau desain dan menyebabkan keluaran yang keliru saat program berjalan.

  1. Kode dengan banyak cacat sering disebut penuh bug.
  2. Laporan bug menjelaskan sifat suatu cacat.
  3. Alat pelacakan bug membantu memantau cacat dalam sistem.
  4. Pada salah satu teknik pengujian, cacat sengaja dimasukkan ke dalam kode. Hasilnya kemudian diamati untuk melihat apakah sistem merespons masalah tersebut sebagaimana yang diharapkan.

Defect Prevention and DetectionRequirement StudyDesignImplementationTestRelease andMaintenanceDefectPreventionDefectDetection
Buka Diagram Ukuran Penuh

Apa Itu Cacat?

Apa Itu Tingkat Keparahan dan Prioritas?

Tingkat keparahan menggambarkan dampak cacat terhadap sistem. Kategori berikut membantu mengelompokkan dampak tersebut.

  1. Cacat kritis membuat aplikasi tidak dapat berfungsi dengan baik akibat kegagalan sistem atau kerusakan data. Pengguna tidak dapat melanjutkan.
  2. Pada cacat berat, sistem mungkin gagal, tetapi pengguna masih bisa mencapai hasil yang diinginkan dengan cara lain tanpa pelatihan tambahan. Cacat berat tidak separah cacat kritis.
  3. Pada cacat sedang, sistem tetap berjalan, tetapi menghasilkan keluaran yang salah atau saling bertentangan.
  4. Cacat ringan tidak menyebabkan kegagalan sistem atau mengganggu kegunaan, serta mudah diperbaiki.
  5. Cacat kosmetik memengaruhi tampilan sistem.

Laporan cacat mencatat tingkat keparahan dan prioritas. Prioritas memberi tahu pengembang urutan perbaikan cacat.

  1. Cacat berprioritas rendah diperbaiki setelah cacat yang lebih diprioritaskan. Cacat ini tidak memerlukan tindakan segera.
  2. Cacat berprioritas sedang segera diperbaiki setelah cacat yang lebih diprioritaskan selesai ditangani.
  3. Segera tangani cacat berprioritas tinggi dan perbaiki secepat mungkin.
Pertimbangkan tingkat keparahan dan prioritas yang dilaporkan secara bersamaan untuk menentukan seberapa mendesak tindakan yang dibutuhkan.

Severity and PriorityNoncriticalHigh SeverityLow PriorityCriticalHigh SeverityHigh PriorityLowLow SeverityLow PriorityHighLow SeverityHigh PrioritySeverityPriority
Buka Diagram Ukuran Penuh

Apa Itu Tingkat Keparahan dan Prioritas?

  1. Pada prioritas dan tingkat keparahan yang tinggi, masalah pada fungsi dasar membuat pengguna tidak dapat memakai sistem. Perbaiki segera.
  2. Pada prioritas tinggi dengan tingkat keparahan rendah, kesalahan ejaan nama perusahaan atau masalah logo berdampak kecil pada fungsi, tetapi harus segera diperbaiki.
  3. Pada tingkat keparahan tinggi dengan prioritas rendah, cacat berat memengaruhi modul yang belum diperlukan pengguna. Perbaikannya dapat ditunda.
  4. Pada prioritas dan tingkat keparahan yang rendah, cacat kosmetik yang tidak mengganggu fungsi biasanya diperbaiki paling akhir.




Kami menjamin Anda akan lulus ujian sertifikasi pengujian perangkat lunak dengan pelatihan online gratis ini!

  1. 01

    Daftar secara online

    Pilih sertifikasi terakreditasi dan selesaikan pendaftaran.

  2. 02

    Terima kode akses Anda

    Kode akses ujian pribadi Anda langsung dikirim melalui email.

  3. 03

    Bersiap dan ikuti ujian

    Pelajari materi pelatihan gratis dan jawab 50 soal pilihan ganda secara online.

  4. 04

    Raih sertifikasi seumur hidup

    Terima sertifikat yang berlaku di seluruh dunia dan lencana digital yang dapat diverifikasi.

Contoh sertifikat Accredited Software Test Manager Certification™
Daftar Sertifikasi

PELATIHAN ONLINE PREMIUM GRATIS UNTUK ANDA

Edisi Kedua Software Testing Revealed Sudah Tersedia untuk Anda.

Kami membuat pelatihan ini bersama sekelompok pemimpin bisnis dan tim terkemuka, pelatih pengujian perangkat lunak, mentor, pakar, dan tokoh berpengaruh dari semua industri utama. Siapa pun yang mengunjungi International Software Test Institute™ dapat mengaksesnya. Temukan materinya di bagian Buku Pengujian Perangkat Lunak Gratis Anda dan Pelatihan Premium Pengujian Perangkat Lunak Gratis Anda pada menu utama.

Materi ini merupakan kekayaan intelektual International Software Test Institute™ yang dilindungi hak cipta. Kami membagikannya secara gratis kepada semua orang karena berbagi keahlian membantu para profesional pengujian perangkat lunak dan memajukan bidang ini.

Ujian sertifikasi Anda menggunakan soal pilihan ganda. Pelajari pelatihan online untuk mendapatkan pengetahuan yang Anda perlukan agar lulus ujian dan meraih sertifikasi pengujian perangkat lunak.

Kami menjamin Anda akan lulus ujian sertifikasi pengujian perangkat lunak dengan pelatihan online premium gratis ini!