一、AB測試
一民傻、A/B測試的好處
消除客戶體驗(yàn)(UX)設(shè)計(jì)中不同意見的紛爭,根據(jù)實(shí)際效果確定最佳方案场斑;
通過對(duì)比試驗(yàn)漓踢,找到問題的真正原因,提高產(chǎn)品設(shè)計(jì)和運(yùn)營水平漏隐;
建立數(shù)據(jù)驅(qū)動(dòng)喧半、持續(xù)不斷優(yōu)化的閉環(huán)過程;
通過A/B測試青责,降低新產(chǎn)品或新特性的發(fā)布風(fēng)險(xiǎn)挺据,為產(chǎn)品創(chuàng)新提供保障。
二脖隶、A/B測試效率
在App和Web開發(fā)階段扁耐,程序中添加用于制作A/B版本和采集數(shù)據(jù)的代碼由此引起的開發(fā)和QA的工作量很大,ROI(return on investment)很低产阱。AB測試的場景受到限制做葵,App和Web發(fā)布后,無法再增加和更改AB測試場景心墅。額外的A/B測試代碼酿矢,增加了App和Web后期維護(hù)成本榨乎。因此,提高效率是A/B測試領(lǐng)域的一個(gè)關(guān)鍵問題瘫筐。
三蜜暑、怎樣高效實(shí)施A/B測試?
在App和Web上線后策肝,通過可視化編輯器制作A/B測試版本肛捍、設(shè)置采集指標(biāo),即時(shí)發(fā)布AB測試版本之众。
AB測試的場景數(shù)量是無限的拙毫;
在App和Web發(fā)布上線后,根據(jù)實(shí)際情況棺禾,設(shè)計(jì)AB測試場景缀蹄,更有針對(duì)性,更有效膘婶;
無需增加額外的AB測試代碼缺前,對(duì)App和Web的開發(fā)、QA和維護(hù)的影響最小悬襟。
四衅码、AB測試步驟
1.現(xiàn)狀分析:分析業(yè)務(wù)數(shù)據(jù),確定當(dāng)前最關(guān)鍵的改進(jìn)點(diǎn)脊岳。
2.假設(shè)建立:根據(jù)現(xiàn)狀分析作出優(yōu)化改進(jìn)的假設(shè)逝段,提出優(yōu)化建議。
3.設(shè)定目標(biāo):設(shè)置主要目標(biāo)割捅,用來衡量各優(yōu)化版本的優(yōu)劣惹恃;設(shè)置輔助目標(biāo),用來評(píng)估優(yōu)化版本對(duì)其他方面的影響棺牧。
4.界面設(shè)計(jì):制作2(或多)個(gè)優(yōu)化版本的設(shè)計(jì)原型巫糙。
5.技術(shù)實(shí)現(xiàn):
網(wǎng)站、App(Android/iOS) 颊乘、微信小程序和服務(wù)器端需要添加各類A/B測試平臺(tái)提供的SDK代碼参淹,然后制作各個(gè)優(yōu)化版本。
Web平臺(tái)乏悄、Android和iOS APP需要添加各類A/B測試平臺(tái)提供的SDK代碼浙值,然后通過編輯器制作各個(gè)優(yōu)化版本。
通過編輯器設(shè)置目標(biāo)檩小,如果編輯器不能實(shí)現(xiàn)开呐,則需要手工編寫代碼。
使用各類A/B測試平臺(tái)分配流量。初始階段筐付,優(yōu)化方案的流量設(shè)置可以較小卵惦,根據(jù)情況逐漸增加流量。
6.采集數(shù)據(jù):通過各大平臺(tái)自身的數(shù)據(jù)收集系統(tǒng)自動(dòng)采集數(shù)據(jù)瓦戚。
7.分析A/B測試結(jié)果:統(tǒng)計(jì)顯著性達(dá)到95%或以上并且維持一段時(shí)間沮尿,實(shí)驗(yàn)可以結(jié)束;如果在95%以下较解,則可能需要延長測試時(shí)間畜疾;如果很長時(shí)間統(tǒng)計(jì)顯著性不能達(dá)到95%甚至90%,則需要決定是否中止試驗(yàn)印衔。
五啡捶、A/B測試實(shí)施策略
1.從簡單開始:可以先在Web前端上開始實(shí)施。Web前端可以比較容易的通過可視化編輯器制作多個(gè)版本和設(shè)置目標(biāo)(指標(biāo))奸焙,因此實(shí)施A/B測試的工作量比較小瞎暑,難度比較低。在Web前端獲得經(jīng)驗(yàn)后忿偷,再推廣到App和服務(wù)器端金顿。
2.隔離變量:為了讓測試結(jié)果有用臊泌,應(yīng)該每個(gè)試驗(yàn)只測一個(gè)變量(變化)鲤桥。如果一個(gè)試驗(yàn)測試多個(gè)變量(比如價(jià)格和顏色),就不知道是哪個(gè)變量對(duì)改進(jìn)起了作用渠概。
3.盡可能頻繁茶凳、快速進(jìn)行A/B測試:要降低A/B測試的代價(jià),避免為了A/B測試做很多代碼修改播揪,盡量將A/B測試與產(chǎn)品的工程發(fā)布解耦贮喧,盡量不占用太多工程部門(程序員、QA等)的工作量猪狈。
4.要有一個(gè)“停止開關(guān)”:不是每個(gè)A/B測試都會(huì)得到正向的結(jié)果箱沦,有些試驗(yàn)可能失敗,要確保有一個(gè)“開關(guān)”能夠停止失敗的試驗(yàn)雇庙,而不是讓工程部門發(fā)布一個(gè)新版本谓形。
5.檢查縱向影響:夸大虛假的CTA(Call To Action)可以使某個(gè)A/B測試的結(jié)果正向,但長期來看疆前,客戶留存和銷售額將會(huì)下降寒跳。因此,時(shí)刻要清楚我們追求的是什么竹椒,事先就要注意到可能會(huì)受到負(fù)面影響的指標(biāo)童太。
6.先“特區(qū)”再推廣:先在一兩個(gè)產(chǎn)品上嘗試,獲得經(jīng)驗(yàn)后,推廣到其他產(chǎn)品中书释。
六翘贮、A/B測試與一般的工程測試的區(qū)別。
A/B測試用于驗(yàn)證用戶體驗(yàn)征冷、市場推廣等是否正確择膝,而一般的工程測試主要驗(yàn)證軟硬件是否符合設(shè)計(jì)預(yù)期,因此AB測試與一般的工程測試分屬于不同的領(lǐng)域检激。
七肴捉、A/B測試工具
國外:Optimizely,Visual Website Optimizer叔收,Omniture等齿穗;
國內(nèi):Testin,ABTester饺律,AppAdhoc Optimizer窃页、云眼。
二复濒、灰度測試
灰度測試是什么意思呢脖卖?如果對(duì)互聯(lián)網(wǎng)軟件研發(fā)行業(yè)不太了解的話,可能對(duì)這個(gè)詞還是很陌生的巧颈,其實(shí)灰度測試就是指如果軟件要在不久的將來推出一個(gè)全新的功能畦木,或者做一次比較重大的改版的話,要先進(jìn)行一個(gè)小范圍的嘗試工作砸泛,然后再慢慢放量十籍,直到這個(gè)全新的功能覆蓋到所有的系統(tǒng)用戶,也就是說在新功能上線的黑白之間有一個(gè)灰唇礁,所以這種方法也通常被稱為灰度測試勾栗。
從目前來看,灰度測試存在兩種方式盏筐,一種是軟件系統(tǒng)內(nèi)自帶灰度測試發(fā)布系統(tǒng)围俘,另一種方式就是使用第三方工具來輔助進(jìn)行,這兩種方法都是可行的琢融。
灰度測試這種方法可以幫助研究團(tuán)隊(duì)快速試驗(yàn)并發(fā)現(xiàn)問題并在大規(guī)模推向用戶之前及時(shí)把問題修正過來界牡,很大成度上減少了不少風(fēng)險(xiǎn)的產(chǎn)生,所以灰度測試是很有必要的吏奸。要知道只有不斷創(chuàng)意并完善的軟件才能在激烈的市場競爭中立于不敗之地欢揖,當(dāng)有創(chuàng)意的時(shí)候,小規(guī)模的灰度測試是非常有必要的奋蔚。不但滿足了一部分人搶先體驗(yàn)的愿望同時(shí)也可以發(fā)展研發(fā)團(tuán)隊(duì)不容易發(fā)現(xiàn)的各種問題她混,還能收集到真正的用戶體驗(yàn)烈钞,這些對(duì)于優(yōu)化全新的系統(tǒng)內(nèi)容都是非常有幫助的,如果沒有灰度測試的話坤按,其實(shí)和閉門造車的感覺是差不多了毯欣,在增加灰度測試以后才能真正把其推向用戶。
灰度測試存在的意義是什么呢臭脓?要知道現(xiàn)在很多互聯(lián)網(wǎng)產(chǎn)品都存在用戶規(guī)模非常大酗钞,版本更新過于頻繁的問題,每當(dāng)有新版本進(jìn)行更新或者上線的時(shí)候来累,新的版本都是要承受非常大的壓力的砚作,而灰度測試的使用則可以很好的規(guī)避這種存在可能性非常大的風(fēng)險(xiǎn)問題。