Saya ingin tahu strategi apa yang Anda gunakan untuk menangani uji A / B dari aplikasi dan gitflow Anda.
Gambaran:
Kami adalah tim yang terdiri dari 6 programmer yang mengembangkan dan memelihara Aplikasi besar. Sejauh ini kami telah bekerja di gitflow dengan beberapa add-on pada proses yang ditambahkan oleh kami yang bekerja dengan sangat baik selama beberapa tahun. Dengan cara yang disederhanakan, kami menggunakan:
- cabang utama (hanya kode versi yang diterbitkan)
- cabang rilis yang menyatu dalam master setelah tes redundansi akhir
- perbaikan terbaru yang hanya berinteraksi dengan cabang utama dalam kasus ekstrim
- mengembangkan yang mengakumulasi modul yang dikembangkan saat mereka selesai dan diuji, akhirnya bergabung ke rilis.
- / fitur yang merupakan kelompok fitur yang bercabang dari pengembangan dan setelah mereka selesai dan melewati berbagai tahap pengujian bergabung kembali ke mengembangkan fungsi menambahkan
- / fix_develop yang merupakan sekelompok fitur yang berisi perbaikan untuk bug yang ditemui dari versi sebelumnya yang tidak terlalu mendesak untuk memulai perbaikan terbaru.
Sekarang, seiring perkembangan aplikasi, dengan tim UX dan tim pemangku kepentingan lainnya, kami mengadopsi strategi pengujian A / B yang lebih kuat di mana rilis baru akan memiliki 2 versi, dan berdasarkan bagaimana pengguna kami menyukai satu versi atau yang lain akan menjadi master terakhir versi selama mereka masuk akal bagi pengguna kami.
Setelah menjelaskan itu, pertanyaannya adalah : Strategi apa yang telah Anda gunakan atau rekomendasikan untuk mengelola kode versi pengujian A / B di gitflow?
Opsi yang saya anggap tidak konsisten, misalnya bercabang cabang A dan B dari master dan kemudian bergabung dengan cabang rilis ke satu atau yang lain, di mana saya tidak tahu bagaimana berurusan dengan memisahkan kode yang terkandung dari cabang rilis ke fitur ranting. Pilihan lain adalah membuat rilis A, dan cabang B dan mengembangkan cabang A dan B yang terdengar seperti terlalu banyak cabang dan kebingungan untuk rekan tim saya.
Saya mendengar pendapat Anda, terima kasih!
Pembaruan: Aplikasi yang kami kembangkan adalah Aplikasi Android dan kami menerapkan pengujian A / B menggunakan platform PlayStore untuk pengujian A / B, yang mengharuskan untuk membuat dua APK dan mengunggah salah satunya dengan rollout%. Agar lebih mudah, dan karena perubahan terkadang lebih besar dari sekadar posisi tombol, kami memutuskan untuk tidak menambahkan sakelar kami sendiri untuk pengujian A dan B dalam satu APK tunggal.