Bug Reporting
Sebelumnya kita telah mempelajari apa itu bug. Kali ini kita akan membahas tentang bagaimana cara melaporkan bug yang ditemukan.
Di bawah ini adalah ringkasan singkat tentang apa yang harus disertakan untuk setiap komponen bug report
1. Judul yang jelas
Diharapkan semua orang di dalam tim dapat memahami tentang apa bug yang dilaporkan dengan hanya melihat dari judulnya saja.
2. Satu bug untuk satu report
Laporkan satu bug dalam satu laporan. Jika memasukkan lebih dari satu atau bahkan banyak bug, itu mungkin akan terabaikan dan tidak akan memenuhi standar requirements.
3. Actual Result
Bagian ini harus memperluas judul dengan menyatakan keadaan yang diamati saat masalah terjadi.
4. Hasil yang diharapkan/Expected Result
Bagian Hasil yang Diharapkan harus menyatakan tentang bagaimana aplikasi harus berperilaku sesuai dengan yang diharapkan.
Misalnya: Fase otorisasi berhasil diselesaikan, user masuk ke akun yang baru dibuat dan diarahkan ke halaman beranda aplikasi.
5. Steps to reproduce
Bagian ini harus mencantumkan setiap langkah yang diperlukan untuk memproduksi atau menemukan bug dalam urutan kronologis.
6. Tingkat keparahan bug
Seperti yang telah dijelaskan sebelumnya bahwa ada 5 kategori bug untuk mendeteksi tingkat keparahan suatu bug, yakni critical, high, medium, minor dan low.
Dengan menyertakan tingkat keparahan suatu bug, tim akan dengan mudah menentukan skala prioritas pengerjaan atau perbaikan bug tersebut.
7. Perangkat dan Sistem Operasi
Setiap bug report akan lebih baik jika menyertakan detail perangkat dan sistem operasi tertentu yang digunakan selama pengujian untuk mengidentifikasi bug.
8. Catatan Lainnya
Sertakan bukti yang diperlukan dan relevan untuk menunjukkan bug yang digambarkan. Bukti meliputi: tangkapan layar, video, log crash atau konsol.
Bug yang didapatkan dengan lebih dari satu langkah biasanya memerlukan video.
Contoh penulisan bug report
- Bug Title: Application crashes upon clicking the SAVE button while creating a new user.
- Bug ID: Jika menggunakan tools, bug ID akan otomatis terbuat
- Area Path: USERS menu -> New Users
- Build Number: Version Number 5.0.1
- Severity: HIGH
- Priority: HIGH
- Assigned to: Nama Developer
- Reported By: Nama QA
- Reported On: 14 Juli 2022
- Reason: Defect
- Status: New/Open
- Device: MacOs M1 2020
- Browser: Chrome 103
- Description: The application crashes upon clicking the SAVE button while creating a new user, hence unable to create a new user in the application.
- Steps to Reproduce:
- Login into the Application.
- Navigate to the Users Menu > New User
- Filled out all the user information fields.
- Clicked on the ‘Save’ button.
- Seen an error page “ORA1090 Exception: Insert values Error…”
- See the attached logs for more information (Attach more logs related to the bug..IF any)
- Also see the attached screenshot of the error page.
- Expected Result: On clicking the SAVE button, the user should be prompted with a successful message “New User has been successfully created”.
- (Attach ‘application crash’ screenshot. IF any)
Menyelesaikan bug sangat penting bagi perusahaan mana pun untuk menghasilkan produk yang optimal.
Dengan mengikuti siklus bug/defect, perusahaan dapat memastikan bahwa bug terdeteksi dan diselesaikan secara efisien secara paralel dengan fase produksi. Juga dapat memastikan bahwa produk akhir yang di deliver ke end user sudah maksimal untuk mempertahankan tingkat kualitas yang tinggi.
Keterampilan bug reporting juga merupakan hal paling penting yang perlu dimiliki seorang QA. Bug reporting dan bug tracking memerlukan seperangkat keterampilan khusus yang sangat berbeda dari yang dibutuhkan di bidang lain seperti desain atau pengembangan.
All in one
Alasan QA memerlukan profil khusus adalah karena QA merupakan satu-satunya bagian yang berada tepat di tengah-tengah matriks pengembangan perangkat lunak, bekerja dengan dan di antara developer, designer, product owner/product manager, analyst, user dan client.
QA harus memberi tahu developer untuk mengubah (memperbaiki) kode mereka. Dan ketika situasi mengharuskan, QA juga yang memberi tahu desainer bahwa desain mereka tidak cukup intuitif untuk end user.
QA berkomunikasi dengan tim produk dan memastikan mereka berada di jalur yang benar untuk memperbaiki bug yang ada. Tim tergantung pada QA untuk memastikan bahwa semua orang selaras dan tahu apa yang perlu dilakukan.
Jadi, apa saja keterampilan bug reporting yang harus kita miliki?
1. Memiliki beberapa keterampilan teknologi
Dibutuhkan beberapa keterampilan teknologi dan pengembangan yang hebat untuk menemukan bug, mendokumentasikan nya, dan memberikan deskripsi komprehensif tentang bagaimana membuatnya dapat direproduksi. Anda harus setidaknya, sedikit akrab dengan bahasa pemrograman yang berbeda yang digunakan untuk mengembangkan produk dan dengan konfigurasi dasar dari sistem yang digunakan. Tidak harus menjadi seorang developer, tetapi QA harus memiliki pemahaman dasar tentang teknologi frontend & backend. QA memerlukan pemahaman ini untuk dapat berbicara dengan developer yang bertanggung jawab untuk memperbaiki masalah yang ditemukan.
2. Pandai berkomunikasi
Sangat mudah untuk memandu tim developer ke arah yang salah hanya dengan memiliki ketidakcocokan dalam terminologi atau manajemen ekspektasi yang buruk. Ketika QA memiliki beberapa informasi, QA harus bersedia mengajukan pertanyaan kepada developer saat pertanyaan perlu diajukan. QA yang baik tidak keberatan berhubungan dengan orang-orang dan terlibat dalam open discussion.
3. Harus diplomati
Mencari kesalahan orang lain dan mengungkapkannya selalu merupakan hal yang sulit untuk dilakukan. Melakukannya sebagai QA atau reporter bug berarti kita harus dapat bekerja sama dengan orang-orang di dalam tim secara efisien. Ini juga berarti mampu menyelesaikan pekerjaan meskipun itu berarti harus menghadapi sedikit perlawanan dan kejengkelan di sana-sini. Tidak ada yang suka bug dan tidak ada yang suka mereka ditemukan. Membangun budaya trial & error yang berpikiran terbuka sangat penting di sini. Jadi tidak ada gunanya menuding developer untuk bug atau kesalahan tertentu.
4. Menjadi negosiator yang baik
Terkesan kontra-intuitif, tetapi negosiasi adalah bagian dari kehidupan sehari-hari QA. Untuk dapat menyelesaikan sesuatu dalam waktu yang sesuai, keterampilan negosiasi sangat penting. Salah satu alasannya adalah karena tim developer terlalu sibuk dengan pekerjaan mereka, jadi mereka harus meluangkan waktu untuk memperbaiki bug. Itu berarti akan ada banyak bolak-balik antara QA dan developer tentang kapan dan apa yang harus dilakukan.
5. Good at Testing
Jelas bahwa testing adalah segala hal tentang QA. Seorang QA harus benar-benar pandai dalam mengeksekusi pengujian. Memiliki pemahaman yang baik tentang berbagai konsep pengujian, alur kerja, alat, dan teknik yang harus dimiliki.
6. Menjadi penyelam yang dalam
Saat QA berurusan dengan bug, hanya memahami bug saja tidak pernah sebaik benar-benar memahami apa yang terjadi. Jika tidak, deskripsi dan instruksi QA pasti tidak jelas dan tentu akan mengakibatkan peningkatan biaya. Itulah mengapa QA harus memiliki tingkat keingintahuan yang tinggi. Sebagai reporter bug, QA menghabiskan banyak waktu untuk produk itu sendiri dan mempelajari seluk beluk produk. Bersiaplah untuk menyelam jauh ke dalam produk dan basis teknologinya.
7. Memahami produk dari perspektif end user
Perangkat lunak harus memenuhi fungsi tertentu. Memahami persyaratan produk dan bagaimana membantu pengguna adalah kunci untuk dapat berkomunikasi dengan baik dengan semua orang. Ini terutama kunci untuk dapat berkomunikasi dengan end user. Ketika QA membutuhkan informasi tambahan dari pengguna, akan sulit untuk berkomunikasi secara teknis. Ketika ini terjadi, QA harus memahami cara kerja produk dari sudut pandang end user dan apa yang dia coba lakukan. Ini juga akan membantu dalam membedakan isu-isu berdasarkan priority dan severity nya.
Bug Tracking Tools
Ada alat yang bisa digunakan untuk membuat bug report dan melakukan bug tracking, beberapa diantaranya yang umum digunakan yaitu
- Jira
- Bugzilla
- BugNet
- Redmine
- Mantis
- Trac
- Backlog
Materi QA:
Komentar
Posting Komentar