A/B Testing
Sử dụng Firebase A/B Testing kết hợp với GSM để tracking cho việc A/B Testing
1. Nguyên lý hoạt động
Lợi dụng tính chất chia tệp user A-B của firebase để từ đó game gán group là A hay B cho tất cả các dữ liệu event GSM.
Ví dụ: Khi 1 user được firebase phân loại thuộc tệp A, thì lúc này phía game sẽ set group bằng userA cho tất các loại event với GSM. Khi đó trên GSM khi tìm chọn group = userA sẽ ra tất cả các hành vi của user thuộc tệp A.
2. Cách thực hiện
Đối với người vận hành: Tạo và thiết lập AB test trên Firebase
Đối với Developer: lấy dữ liệu từ AB Test và tạo logic với game
2.1 Đối với người vận hành
Lưu ý: Trên firebase, 1 thời điểm chỉ tạo ra 1 case AB Testing
Tạo A/B Test trên firebase
Vào Firebase Console → Engage → A/B Testing.
Nhấn Create experiment và chọn Remote Config.
Đặt tên cho thử nghiệm (ví dụ: "AB Testing").
Chọn điều kiện thử nghiệm (Targeting) như:
Tỷ lệ phân bổ: 50% người dùng nhóm A (control), 50% nhóm B (test).
Đối tượng người dùng: Có thể chọn tất cả hoặc chỉ một nhóm cụ thể (ví dụ: người dùng mới, người dùng Android, người dùng đã cài app >30 ngày).
Mục tiêu đo lường: Retention rate, in-app purchase, engagement...
Variants: Làm theo mẫu bên dưới
Luôn luôn phải có parameter: ab_test_group. Trường này giúp phân biệt đây là user thuộc tệp A hay B
Các trường khác là data để phía game xử lý logic cho event AB Testing. Ví dụ trong hình trên là ConfigMiniEvent, ConfigMiniEventLoop, ad_full_settings là các json data để phía game lấy về và xử lý logic. Các trường này đặt tên tùy ý tùy theo logic của game
2.2 Đối với Developer
Phía game thực hiện code để lấy giá trị với parameter có key = "ab_test_group".
Tích hợp GSM SDK (Phiên bản 1.2.2.3 trở lên)
Cần thực hiện Init thủ công
Thực hiện call:
GSMCore.Instance.SetUserClassify("userA");
Trong đó userA là giá trị lấy được từ firebase với key = "ab_test_group"Cần thực hiện
SetUserClassify
trước khi Init GSM SDK
Code sample:
2.3 Ví dụ kết quả sau khi thực hiện AB Testing
Ví dụ parameter "ab_test_group" có giá trị là A hoặc B, và lấy nguyên giá trị này để đẩy trong GSM.
Như vậy ở GSM sẽ có A/B Test Types là A hoặc B để lựa chọn xem dữ liệu.
Nếu A/B Test Types= A tức dữ liệu phát sinh từ tệp user A
Nếu A/B Test Types= B tức dữ liệu phát sinh từ tệp user B
Và tất cả các nơi truy vấn dữ liệu trong GSM đều có thể lọc dữ liệu theo tệp A hoặc tệp B
Last updated