Foto: Tokopedia
Teknolgi.id - Apakah kamu pernah membayangkan berapa banyak halaman dan fitur Tokopedia yang perlu diperbaiki dan ditingkatkan hampir setiap hari agar Tokopedia selalu dapat memberikan yang terbaik kepada lebih dari 100 juta penggunanya di Indonesia?
Tokopedia sebagai super ekosistem memiliki berbagai fungsi dan halaman produk, seperti halaman checkout, panel penjual, toko resmi, detail produk, akun, pembayaran melalui halaman Play Tokopedia, yang tetap ada dan berkembang dari waktu ke waktu.
Dengan begitu banyak halaman yang harus dipelihara setiap hari, bagaimana tim iOS Tokopedia dapat menguji atau mengalami setiap halaman yang berbeda ini?
September lalu, Tokopedia kembali menyelenggarakan START Summit Extension melalui Tokopedia Academy. Adityo Rancaka, selaku Senior Software Engineer Tokopedia, dan Dhio Etanasti selaku Lead Software Engineer Tokopedia, berbagi pengalaman mereka di bidang pengembangan seluler, khususnya dalam pengembangan iOS, dengan topik "Bagaimana tim iOS membuat aplikasi distribusi dan pengujian di sistem" mendistribusikan aplikasi untuk pengujian.
Perjalanan dalam Membangun Pengujian Penerapan Aplikasi Internal
Pada sesi pertama, Caka berbagi cerita akan kesulitan dalam menguji setiap build atau hasil pengembangan. Secara umum, diperlukan beberapa fase gyba menguji fungsi atau halaman, seperti menguji fungsi atau halaman, menandatangani kode, mendaftarkan ID unit, atau mendistribusikan pengembangan ke tim lain. Jika ada lebih dari 10 orang dalam satu tim, 10 ID perangkat harus didaftarkan.
Tokopedia juga mengalami hal serupa, hingga akhirnya tim iOS Tokopedia menemukan cara untuk membuat sistem distribusi aplikasi di iOS guna mempermudah proses dan meningkatkan produktivitas seluruh tim pengembang serta menyesuaikan dengan kebutuhan di luar Tim .
Saat pengujian, tim iOS Tokopedia memiliki beberapa metode yakni pengujian otomatis, yang terbagi menjadi Unit Test dan UI Test. Unit Test didedikasikan untuk menguji sistem logic dan fungsional dalam aplikasi, sedangkan UI Test berguna untuk menjalankan sistem antarmuka.
Namun, pengujian otomatis saja tidak cukup. Tim iOS Tokopedia juga harus melakukan uji manual dimana kita harus mendownload build atau layout ke server dimana product owner dan developer bisa menginstall dan mendownload aplikasi disana.
Berdasarkan kebutuhan tersebut, tim iOS Tokopedia juga mengembangkan sistem proprietary yaitu Tokopedia App Delivery Platform yang memudahkan pengembang iOS Tokopedia untuk mengunggah semua desain sehingga dapat digunakan untuk pengujian.
Selain mengembangkan layanan untuk pengujian, tim pengembang iOS Tokopedia juga memiliki Tokopedia Apps Distribution Platform. Dengan program ini, tim pengembang iOS tidak perlu mendaftarkan setiap perangkat atau ID pengguna satu per satu saat menguji build atau desain baru.
Pembangunan dan pengembangan platform distribusi aplikasi Tokopedia tentu tidak luput dari beberapa tantangan. Dalam satu hari, tim pengembang iOS dapat memuat setidaknya 90 tugas yang baru dibuat dengan ukuran hingga 36 GB per hari, di mana kapasitas penyimpanan yang tersedia hanya 250 GB.
Dengan keterbatasan ini, tim pengembangan iOS akhirnya mengambil alih setiap build. Dengan kepemilikan masing-masing desain ini, seluruh tim pengembang iOS dapat mengetahui setiap pemilik dari setiap desain, sehingga dapat lebih mudah untuk menentukan kemampuan atau batasan untuk membatasi setiap pengembang saat mengunggah desain ke sistem.
Baca juga: Priscilla Anais: Pemimpin Wanita di balik Produk Tokopedia.
Tokopedia Pro: Melibatkan Nakama Tokopedia Dalam Melakukan Internal Beta Testing
Dhio menjelaskan bagaimana tim pengembang iOS Tokopedia dapat mengembangkan sistem distribusi aplikasi yang ada untuk meningkatkan kualitas aplikasi Tokopedia.
Contoh yang dapat diambil adalah pengembangan pengujian beta internal. Selain pengujian manual dan pengujian otomatis, pengembang harus memastikan dan meminimalkan terjadinya bug atau kesalahan dalam setiap rancangan.
Untuk mengatasi hal ini, tim teknologi Tokopedia telah menerapkan istilah yang disebut "dogfooding", yang didefinisikan sebagai praktik menggunakan produk dan layanan milik sendiri. Ini memberikan kesempatan kepada para Nakama atau karyawan Tokopedia untuk menguji fitur dan layanan selama jangka waktu tertentu sebelum produk akhirnya dirilis ke publik.
Praktik ini merupakan salah satu praktik yang dapat diterapkan saat melakukan pengendalian kualitas.Kemudian tim pengembang iOS mengembangkan sistem distribusi aplikasi yang ada dengan membuat sistem pengujian beta internal lengkap yang disebut Tokopedia Pro.
Tokopedia Pro dapat digunakan oleh semua Nakama di Tokopedia, di mana mereka dapat menikmati fungsi-fungsi terbaru langsung dengan bawaan sistem umpan balik. Nakama dapat melaporkan masalah dan bug yang mereka terima secara langsung melalui formulir umpan balik yang ada di seluruh sistem Tokopedia Pro.
Selain itu, Nakama juga dapat memberikan umpan balik, termasuk menjelaskan keluhan, serta melampirkan foto dan video tentang masalah yang tertunda.Semua laporan yang masuk dikirim ke Tokopedia Application Distribution Platform Service.
Data ini kemudian diolah menjadi tiket sehingga dapat diproses pada proses perbaikan selanjutnya. Tokopedia Pro juga terintegrasi dengan Slack, saluran komunikasi yang digunakan oleh seluruh Nakama di Tokopedia. Ada saluran khusus yang didedikasikan untuk menerima laporan secara otomatis.
Tim pengembang juga dapat menggunakan saluran ini untuk berdiskusi dengan Nakama, yang memberikan umpan balik atau laporan. Selain terintegrasi ke dalam Slack, data yang dilaporkan juga dapat dihubungkan ke Tokopedia Pro, sehingga setiap Nakama mendapat informasi perkembangan laporan tersebut.
Dengan fokus pada budaya konsumen, tim teknologi Tokopedia memberikan kesempatan kepada Nakama untuk menguji fitur dan penyempurnaan terbaru sebagai klien Tokopedia pertama. Untuk menonton ulang siaran START Summit Extension September, kunjungi link ini dan pastikan untuk selalu menantikan acara START Summit Extension selanjutnya!
(MIM)