Software Testing Life Cycle
Mungkin jarang mendengar Software Testing Life Cycle (STLC), ditambah lagi apabila di sekolah atau tempat kuliahnya yang baru memiliki kurikulum untuk mempelajari Software Development Life Cycle (SDLC) dan belum memiliki kurikulum untuk mempelajari STLC. SDLC dan STLC hampir mirip karena sama — sama tahapan yang diperlukan dalam suatu software. Namun perbedaannya SDLC fokus pada pengembangan, sedangkan STLC fokus pada pengujian.
Sehingga dapat disimpulkan STLC adalah suatu tahapan menguji software, yang bertujuan untuk memastikan pengembangan software sudah sesuai dengan requirement dan user acceptance criteria. STLC dilakukan oleh Quality Assurance, setelah itu mungkin Team Product juga perlu melakukan test execution, sebelum software deliver ke Client, untuk memastikan semua user acceptance criteria passed dan Client tidak menemukan defect.
Tahapan dalam mengetest software terdiri dari :

1. Requirement Analysis :
· Mereview requirement specification document
· Mereview user acceptance criteria dari segi fungsional, performance, usability, bahkan security
· Memahami requirement dengan baik
· Berdiskusi dengan Team Product, Business mengenai requirement mana yang paling penting dari segi fungsionalitas dan non fungsionalitas
· Berdiskusi dengan Team Product, Business mengenai requirement apa yang mungkin tidak perlu di uji, dari segi fungsionalitas dan non fungsionalitas
· Mereview apakah memungkinkan jika melakukan automation testing
2. Test Planning :
· Merencanakan test
· Merencanakan strategi untuk berbagai macam test
· Membuat estimasi scope berdasarkan test feasibility, proses test, tipe dan prosedur testing, tools & techniques testing
· Membuat estimasi waktu berupa milestone apa saja yang akan dicapai setiap harinya
· Merencanakan metode testing yang akan digunakan apakah manual saja atau memungkinkan dengan automation
· Merencanakan siapa saja yang akan melakukannya & bertugas sebagai apa
· Merencanakan test case
· Membuat kemungkinan risiko yang akan dihadapi
3. Test Designing :
· Apabila melakukan manual test, mendesain test case secara lebih detail dengan membuat positif test & negatif test, yang sesuai dengan requirement & user acceptance criteria
· Apabila melakukan automation test, mendesain test script dari test case
· Menginformasikan kepada client mengenai test case
· Client memberikan komentar mengenai test case & meminta untuk update test case
· Mengupdate test case & meminta persetujuan kepada Client
4. Test Environment Setup :
· Menyiapkan software yang diperlukan untuk test
· Menyiapkan hardware yang diperlukan untuk test
· Melakukan smoke test yaitu melakukan test execution pada fungsionalitas yang paling penting
5. Test Execution :
· Melakukan test case secara manual atau automation atau keduanya
· Bereksplorasi melakukan test untuk memastikan software sudah sesuai requirement
· Menuliskan defect yang ditemukan pada defect report
· Mencapture defect yang ditemukan pada defect report
· Melaporkan pada Team Programmer & meminta untuk diperbaiki
· Melakukan test case ulang secara manual atau automation atau keduanya
· Mencapture setiap test case yang dilakukan
· Menuliskan actual test serta hasilnya passed pada test case
6. Test Closure :
· Melaporkan dokumentasi seperti test case & defect report kepada Project Manager atau Head QA
· Melaporkan dokumentasi kualitas produk kepada Clients
· Evaluasi dari semua tahapan STLC yang dilakukan
· Mendokumentasikan dari hasil evaluasi seperti apa yang berjalan dengan baik, perbaikan scope & apa yang dapat ditingkatkan
· Software sudah siap digunakan oleh Clients
Sumber :
https://www.guru99.com/smoke-testing.html
https://www.softwaretestinghelp.com/what-is-software-testing-life-cycle-stlc/
https://www.guru99.com/software-testing-life-cycle.html
https://www.tutorialspoint.com/stlc/index.htm
http://softwaretestingfundamentals.com/software-testing-life-cycle/