2.2 Test Scenario & Test Case dengan Test Management Tools
Keberhasilan sebuah produk tidak hanya ditentukan oleh keberhasilannya dirilis ke pasar, tetapi juga oleh sejauh mana produk tersebut dapat diandalkan, stabil, dan sesuai dengan kebutuhan pengguna. Untuk mencapai hal ini, proses pengujian harus dilakukan secara terstruktur dan terdokumentasi dengan baik.
Dalam proses pengujian, terdapat beberapa komponen penting yaitu:
● Test plan, mencakup pendekatan, ruang lingkup, jadwal, sumber daya, dan alat yang digunakan dalam pengujian.
● Test scenario, menghubungkan kebutuhan sistem dengan test case yang lebih rinci.
● Test suite, sekumpulan test case yang dikelompokkan berdasarkan modul, fitur, atau tujuan pengujian tertentu.
● Test case, menjadi dasar untuk membuat skrip otomatisasi dan validasi pengujian regresi.
● Test steps, berisikan instruksi yang harus dijalankan oleh QA.
Pada praktik industri, penulisan test case tidak hanya berfungsi sebagai dokumentasi, tetapi juga sebagai alat komunikasi antara tim Quality Assurance, pengembang, manajer proyek, hingga para pemangku kepentingan. Test case yang disusun dengan baik akan membantu:
● Memberikan bukti bahwa proses pengujian telah dijalankan dengan benar.
● Mencegah adanya defect/bug akibat perubahan kode.
● Menghindari duplikasi pengujian oleh anggota tim lain.
● Menjadi dasar untuk otomatisasi pengujian di masa depan.
Namun, seiring bertambahnya jumlah test case dan kompleksitas proyek, pengelolaan manual melalui spreadsheet atau dokumen lokal menjadi kurang efisien dan rentan kesalahan. Di sinilah peran Test Management Tools menjadi sangat penting. Tools seperti TestRail, TestLink, dan Xray menyediakan fitur lengkap untuk menyusun rencana pengujian (test plan), mengelola test case, mencatat hasil eksekusi, menghubungkan dengan tiket bug, serta terintegrasi dengan pipeline continuous integration dan continuous delivery (CI/CD).
Kemampuan menggunakan test management tools saat ini sudah menjadi kebutuhan standar di banyak perusahaan, termasuk di industri e-commerce dan fintech. Tools ini tidak hanya mempercepat dan mempermudah pekerjaan QA, tetapi juga membantu manajer proyek dan pemangku kepentingan dalam memantau kualitas aplikasi secara real-time.
Oleh sebab itu, memahami bagaimana cara menyusun test scenario dan test case yang baik, sekaligus mengelolanya menggunakan test management tools, menjadi bekal penting bagi siapa saja yang ingin berkarier secara profesional di bidang Quality Assurance.
Untuk membuka pembelajaran pada topik ini, berikut beberapa pertanyaan awal yang dapat membantu Digiers melihat gambaran besarnya.
Jika Digiers bekerja dalam tim besar dengan banyak QA, bagaimana Digiers akan membagi dan melacak test case agar tidak tumpang tindih atau terlewat?
Menurut Digiers, kapan saatnya sebuah tim QA perlu beralih dari Excel/manual ke test management tools?
Selain itu, sebelum kita masuk ke materi, yuk kenali dulu apa saja yang akan Digiers capai di akhir pembelajaran topik ini. Memahami tujuan pembelajaran membantu proses belajar menjadi lebih fokus dan terarah.
2.2.1 Struktur dan Elemen Test Case yang Efektif
Dalam dunia QA, test case merupakan salah satu alat kerja yang sangat penting. Test case dapat diibaratkan seperti resep bagi seorang koki, yaitu dokumen yang berisi panduan langkah demi langkah untuk memastikan suatu bagian dari perangkat lunak berfungsi sesuai harapan. Kemampuan menulis test case yang efektif dan mudah dijalankan adalah keterampilan dasar yang wajib dimiliki oleh QA, baik yang bekerja secara manual maupun otomatisasi.
Sebelum membahas struktur test case, penting memahami posisi test case dalam kerangka lebih besar, yaitu test plan. Dalam struktur hierarki pengujian, urutannya kurang lebih sebagai berikut:
Gambar 2.2.1 Urutan Pengujian
1. Test Plan
Test plan merupakan dokumen strategis yang menjelaskan apa yang akan diuji, siapa yang akan melakukan pengujian, bagaimana cara melakukan pengujiannya, dan kriteria keberhasilan pengujiannya. Dokumen ini merupakan payung besar yang mencakup pendekatan, ruang lingkup, jadwal, sumber daya, dan alat yang digunakan dalam pengujian.
2. Test Scenario
Test scenario adalah gambaran tingkat tinggi tentang apa yang akan diuji, biasanya ditulis dari sudut pandang pengguna atau proses bisnis. Test scenario menjawab pertanyaan, “Apa yang ingin diuji di sistem ini?”
Contoh sederhana test scenario antara lain:
● Pengguna dapat login dengan menggunakan akun yang valid.
● Pembeli dapat menambahkan produk ke keranjang belanja.
● Admin dapat mengubah status pesanan menjadi "Terkirim".
Test scenario ditulis dalam bentuk kalimat naratif/deskriptif, tidak menjelaskan langkah-langkah teknis secara detail, dan fokus pada kebutuhan pengguna (user-centric). Ia berfungsi untuk menghubungkan kebutuhan sistem dengan test case yang lebih rinci. Satu test scenario dapat mengandung beberapa test case, tergantung pada variasi input dan kondisi yang diuji.
3. Test Suite
Test Suite adalah kumpulan test case yang saling berkaitan. Tujuan pengelompokan test case supaya mudah dikelola dan di-maintain apabila jumlah test case sangat banyak dan variatif. Contoh:
TEST SUITE: LOGIN TEST SUITE
Daftar Test Case dalam Test Suite:
TC-LOGIN-001 – Login berhasil dengan kredensial valid
TC-LOGIN-002 – Login gagal dengan kredensial invalid: username salah
TC-LOGIN-003 – Login gagal dengan kredensial invalid: password salah
TC-LOGIN-004 – Login gagal dengan kredensial invalid: username dan password kosong
4. Test Case
Test Case adalah unit terkecil dalam proses pengujian perangkat lunak yang dirancang untuk memverifikasi apakah suatu fitur atau fungsi bekerja sesuai dengan yang diharapkan. Dalam test case harus tertulis dengan jelas mengenai beberapa hal yaitu:
● Data input yang akan diberikan,
● Langkah-langkah yang harus dilakukan oleh tester,
● Hasil yang diharapkan agar proses pengujian dapat dilakukan secara konsisten dan terukur.
Tujuan penulisan test case adalah memastikan pengujian dapat dilakukan secara konsisten oleh siapa saja, mudah dilacak dan direferensikan, serta bisa digunakan ulang terutama untuk pengujian regresi. Di dunia industri, test case yang baik sering kali tidak hanya diuji secara manual, melainkan juga menjadi dasar untuk membuat skrip otomatisasi dan validasi pengujian regresi.
5. Test Steps
Bagian inti dari sebuah test case adalah test steps yang merupakan instruksi langkah demi langkah yang harus dijalankan oleh QA. Setiap langkah ditulis secara detail dan berurutan agar:
● Pengujian dapat dijalankan secara konsisten oleh siapa pun.
● Bug dapat dengan mudah direproduksi saat terjadi kegagalan.
● Otomatisasi pengujian dapat dilakukan dengan acuan yang jelas.
Prinsip Dasar Penulisan Test Case
Sebelum menyusun test case, seorang QA perlu memahami prinsip-prinsip dasar agar test case yang dibuat jelas, terstruktur, dan bisa digunakan berkali-kali oleh seluruh tim. Berikut beberapa hal penting yang harus diperhatikan:
● Test case yang efektif bersifat reusable, artinya tidak tergantung pada kondisi atau waktu tertentu sehingga bisa dipakai berulang kali dalam berbagai situasi.
● Langkah-langkah pengujian (test steps) harus ditulis dengan jelas dan mudah dipahami, bahkan oleh anggota tim yang tidak memiliki latar belakang teknis.
● Penggunaan format test case yang konsisten sangat penting agar pengelolaan dan review dapat dilakukan dengan mudah dan efisien oleh tim lintas fungsi.
● Test case harus mencakup skenario positif dan negatif, seperti menguji kondisi saat login berhasil sekaligus saat login gagal, untuk memastikan kualitas aplikasi dapat diuji secara menyeluruh.
Dengan memperhatikan prinsip-prinsip ini, test case yang dibuat akan lebih mudah diimplementasikan, membantu mengurangi kesalahan, dan meningkatkan efektivitas proses pengujian.
Elemen Penting Dalam Test Case
Berikut adalah elemen-elemen penting yang sebaiknya terdapat pada setiap test case agar bisa bekerja secara optimal:
Elemen Test Case |
Penjelasan |
Test Case ID |
Kode unik untuk identifikasi (contoh: TC-LOGIN-001). Kode unik ini akan terisi secara otomatis jika kita menggunakan tools, namun jika menggunakan Excel maka harus diisi secara manual. |
Title / Summary |
Judul singkat yang menggambarkan tujuan test |
Test Scenario |
Deskripsi skenario utama yang melandasi test case |
Pre-condition |
Kondisi yang harus dipenuhi sebelum pengujian dimulai |
Test Steps |
Instruksi langkah demi langkah untuk menjalankan pengujian |
Test Data |
Input data testing yang diperlukan (misalnya: username, password) |
Expected Result |
Hasil yang diharapkan jika sistem bekerja sesuai requirement |
Actual Result |
Hasil nyata saat tes dieksekusi |
Status |
PASSED / FAILED / BLOCKED |
Attachments |
Screenshot, log, atau file pendukung |
Comments |
Catatan khusus, anomali, atau behavior tambahan |
Tabel 2.2.1 Penjelasan Elemen Penting Test Case
Dengan memahami hirarki pengujian ini serta prinsip dan elemen penulisan test case, QA dapat menyusun dokumentasi yang mendukung proses pengujian berkualitas, komunikatif, dan scalable.
⬛ Studi Kasus: Test Case dengan Memperhatikan Elemen-elemen Kunci Test Case
Bayangkan kamu adalah QA untuk sebuah aplikasi e-commerce dan fitur login sedang dikembangkan. Kamu diminta untuk membuat test case berdasarkan requirement berikut:
“Pengguna dapat login menggunakan email dan password yang valid.”
Berikut adalah contoh test case-nya:
Elemen |
Isi |
Test Case ID |
TC-001-LoginValid |
Test Title |
Login dengan valid email dan password |
Test Scenario |
Pengguna berhasil masuk ke dashboard setelah login |
Pre-condition |
User sudah terdaftar dan memiliki akun aktif |
Test Steps |
|
Expected Result |
Sistem menampilkan halaman dashboard |
Actual Result |
(diisi saat testing) |
Status |
PASSED / FAILED |
Manfaat:
● Meminimalkan miskomunikasi antara QA dan developer.
● Memudahkan tracking bug karena kita tahu langkah mana yang gagal.
● Test case bisa dikembangkan untuk automation dengan framework seperti Selenium, Cypress, atau Playwright.