penulis
Fachrul Choliluddin

Senangnya ketika bug report di Github Project telah di resolved

Senangnya dalam hati

Ketika issue yang kita raise di github project akhirnya di aknowledge dan di resolve oleh maintener 😅

ada yang menarik di notifikasi kali ini

Whooaa.. eeh apaan tuh?

Jadi gini, di kantor gw tuh pake library python Toolium untuk ngerjain automation test mobile app, library nya kece banyak banget ngebantu generate test appium dengan lebih cepat, nah suatu ketika ternyata library ini ada problem dimana test android kalo failed jadi ada freeze di teardown process karena ada proses streaming android bugreport yang ukurannya gede bisa 3 MB di ekstrak dari device, nah akhirnya gw coba debug kenapa kok proses teardown ini selalu lama.

Akhirnya ketahuan dari library Toolium ini ada tindakan secara "paksa" untuk ambil 3 macem log, yaitu appium log, android logcat, dan bugreport, yang jadi masalah prose load log ini ga bisa configured, jadi di paksa ambil data gede terus makanya test jadi freeze saat teardown karena generate dan ekstrak 3 megabyte bugreport itu bisa makan waktu 1 menit, kan kesel nungguinnya 😅

Ok,, trus trus

Sebenernya bisa aja saya monkey patch library ini, dengna overide method tersebut, tapi buat permanen solution harusnya dari library nya ini yang di ubah, akhirnya saya coba create bug tiket serius yang pertama disini dan berharap di solved sama maintener nya, klo dilihat sih lumayan aktif development dari perusahaan Telefonica ini, walau toolium web yang sering dapet updatenya.

Selang waktu beberapa lama, ternyata 3 hari lalu solved dan sudah ada di versi release Toolium terbaru donk 😍

Sounds cool, apa lagi tuh?

Nah sebenernya pun saya sudah tau cara resolvednya, tapi mau raise PR sendiri kok belum percaya diri, jadi memilih raise bug tiket saja, dan ternyata memang betul, jika saya perhatikan diff changes codenya, banyak hal yang kemungkinan saya lewatkan dalam perbaikan sendiri seperti cara verifikasi test serta dokumentasinya

Ternyata sangat menyenangkan membandingkan approach problem solving yang berbeda dari kita, bisa dilihat style dan karakter dia dalam bentuk kode

perubahan kode

Dengan sedikit perubahan saja, ternyata bisa beranak banyak test baru seperti:

def test_save_webdriver_logs_one_log_type(driver_wrapper, utils):
def test_save_webdriver_logs_multiple_log_types(driver_wrapper, utils):
def test_save_webdriver_logs_multiple_log_types_with_spaces(driver_wrapper, utils):
def test_save_webdriver_logs_none_log_type(driver_wrapper, utils):
def test_save_webdriver_logs_all_log_type(driver_wrapper, utils):
def test_save_webdriver_logs_without_log_types(driver_wrapper, utils):

Mantap, bisa kita pelajari juga cara dia menguji kode yang dia tulis sebelumnya

jadi semangat ikut kontribusi ke projek ini/lain selanjutnya

This article was updated on 23 Jan 2021

false
Fachrul Choliluddin

Seorang Software Tester yang memiliki pengalaman lebih dari 10 tahun dalam peneliti kualitas perangkat lunak. Aktif berbagi pengetahuan dalam Software Quality Development Engineer in Test, Agile Testing, atau belajar membuat automation test dengan Selenium, Appium, API test dan bahasa pemrograman Python

Comments