汽車(chē)之家測(cè)試團(tuán)隊(duì)質(zhì)量建設(shè)三部曲

團(tuán)隊(duì)背景:質(zhì)量?jī)?nèi)建三個(gè)階段,從開(kāi)始嘗試到推廣到整個(gè)技術(shù)團(tuán)隊(duì),變成常態(tài)化,每個(gè)階段大概都是1年時(shí)間。團(tuán)隊(duì)規(guī)模是150左右,分7,8個(gè)業(yè)務(wù)開(kāi)發(fā)團(tuán)隊(duì),推廣過(guò)程中在試點(diǎn)團(tuán)隊(duì)觀察3個(gè)月,每個(gè)月都會(huì)總結(jié)復(fù)盤(pán),3個(gè)月試點(diǎn)結(jié)束,然后一個(gè)業(yè)務(wù)組一個(gè)業(yè)務(wù)組的推廣。每階段定好一個(gè)建設(shè)目標(biāo),然后
試點(diǎn)--->效果--->推廣--->常態(tài)化。
百人團(tuán)隊(duì)質(zhì)量?jī)?nèi)建從0到1三步走?
困境:
第一步:破局,小步初試
第二步:鞏固,自動(dòng)化
第三步:推動(dòng),聚焦價(jià)值
經(jīng)驗(yàn)心得
困境
傳統(tǒng)開(kāi)發(fā)模式的困境

第一步:破局,小步初試
破局三步:
尋找試點(diǎn)團(tuán)隊(duì),把握關(guān)鍵原則,找到最合適的團(tuán)隊(duì),提供必要的保姆式服務(wù)。

具體做法:面向交付的開(kāi)發(fā)方式




實(shí)施過(guò)程中的各角色遇到問(wèn)題與解決方案
開(kāi)發(fā)角色:
用例執(zhí)行效果不理想:有些用例不執(zhí)行或者用例不完全按照測(cè)試步驟執(zhí)行;
○ 解決方案:
整理測(cè)試用例覆蓋的bug數(shù)據(jù),每個(gè)迭代關(guān)注數(shù)據(jù)督促開(kāi)發(fā)執(zhí)行;
將測(cè)試用例覆蓋出現(xiàn)的bug數(shù)作為考核指標(biāo)引起重視;
在本地或開(kāi)發(fā)環(huán)境自測(cè),自己構(gòu)造數(shù)據(jù)導(dǎo)致測(cè)試結(jié)果不一致;
○ 解決方案:
統(tǒng)一到測(cè)試環(huán)境,開(kāi)發(fā)完成后部署完先自測(cè),完成后在進(jìn)入測(cè)試階段;
數(shù)據(jù)保證從業(yè)務(wù)層面構(gòu)造,不能通過(guò)修改數(shù)據(jù)庫(kù)等方式略過(guò)業(yè)務(wù)場(chǎng)景,無(wú)法發(fā)現(xiàn)問(wèn)題;
開(kāi)發(fā)對(duì)測(cè)試數(shù)據(jù)有疑問(wèn)的,測(cè)試同學(xué)幫助構(gòu)造業(yè)務(wù)數(shù)據(jù),熟悉業(yè)務(wù)的數(shù)據(jù)流程;
開(kāi)發(fā)每人負(fù)責(zé)一個(gè)模塊,業(yè)務(wù)邊界或流程上的沒(méi)人負(fù)責(zé);
○ 解決方案:明確組長(zhǎng)或某個(gè)角色負(fù)責(zé)有交叉的業(yè)務(wù)自測(cè)驗(yàn)證;
對(duì)測(cè)試用例的理解與測(cè)試同學(xué)不一致;
○ 解決方案:進(jìn)入測(cè)試前,測(cè)試與開(kāi)發(fā)溝通測(cè)試用例(一對(duì)一)+測(cè)試用例評(píng)審
測(cè)試角色
測(cè)試用例不能及時(shí)提供:剛開(kāi)始推行,既要寫(xiě)用例,提測(cè)后又要驗(yàn)證每條用例,測(cè)試時(shí)間并沒(méi)有因?yàn)檫@種模式縮短,反 而更長(zhǎng)了,且由于之前迭代的遺留測(cè)試任務(wù),總是不能及時(shí)交付,加班也很難趕上開(kāi)發(fā)的節(jié)奏; ○ 解決方案:
短期改善期是會(huì)比之前更忙,是不可避免的,過(guò)渡期;
逐步來(lái),提供用例的需求覆蓋度,從20%開(kāi)始,逐步增加到80%;
優(yōu)化簡(jiǎn)單的需求開(kāi)發(fā)自測(cè)保證,大家共同努力;
跟開(kāi)發(fā)溝通需求和測(cè)試點(diǎn)后,先提供能覆蓋各種場(chǎng)景的測(cè)試點(diǎn)和粗略的預(yù)期結(jié)果,在開(kāi)發(fā)完成代碼時(shí)提供全部的測(cè) 試用例;
用例場(chǎng)景考慮不全,用例不充分;
○ 解決方案:測(cè)試用例評(píng)審;
提供的測(cè)試用例,顆粒度問(wèn)題;
○ 解決方案:和開(kāi)發(fā)團(tuán)隊(duì)約定一個(gè)大家都可接受、理解的程度
產(chǎn)品角色:
需求不明確,細(xì)節(jié)沒(méi)有寫(xiě)清楚,影響測(cè)試輸出的質(zhì)量和時(shí)間; ○ 解決方案:
測(cè)試給出需求規(guī)約,由產(chǎn)品針對(duì)規(guī)約進(jìn)行細(xì)化補(bǔ)充確定需求規(guī)范,并按照規(guī)范執(zhí)行;
流程上約定測(cè)試同學(xué)先過(guò)一遍需求文檔,符合評(píng)審要求才進(jìn)迭代;
需求文檔給出不及時(shí),沒(méi)時(shí)間充分的需求分析以及用例輸出;
○ 解決方案:約定給出時(shí)間;
需求插入或變更沒(méi)有同步到測(cè)試,導(dǎo)致測(cè)試用例無(wú)效、返工;
○ 解決方案:約定需求變更截止點(diǎn)+要求同步到測(cè)試
效果

解決的問(wèn)題:
整個(gè)團(tuán)隊(duì)嚴(yán)重依賴(lài)測(cè)試,研發(fā)提測(cè)質(zhì)量不穩(wěn)定,越忙Bug越多,提測(cè)后的回歸時(shí)間長(zhǎng); 通過(guò)測(cè)試用例的輸出,提高開(kāi)發(fā)提測(cè)質(zhì)量,開(kāi)發(fā)自測(cè)完成功能初驗(yàn)和修復(fù)的工作,減少測(cè)試同學(xué)發(fā) 現(xiàn)bug后的回歸,縮短交付周期; 開(kāi)發(fā)并行提交,測(cè)試串行,很多團(tuán)隊(duì)抱怨測(cè)試資源緊缺,功能測(cè)試周期長(zhǎng); 測(cè)試環(huán)節(jié)前置到開(kāi)發(fā),由測(cè)試同學(xué)串行測(cè)試任務(wù)到開(kāi)發(fā)并行執(zhí)行,縮短交付周期;
第二步:鞏固,自動(dòng)化






第三步:推動(dòng),聚焦價(jià)值





經(jīng)驗(yàn)心得
從最痛的團(tuán)隊(duì)、最痛的點(diǎn)開(kāi)始,先試點(diǎn),看到效果在推廣; 不為了工具而工具,不為了自動(dòng)化而自動(dòng)化,從實(shí)際問(wèn)題出發(fā)解決問(wèn)題; 容易出效果,建立信心; 角色間協(xié)作流程問(wèn)題比自動(dòng)化工具改善效果更大; 靜態(tài)代碼掃描等措施并不能直觀的減少bug提高提測(cè)質(zhì)量,更重要的作用是代碼的可維 護(hù)性好,不易出問(wèn)題,形成好的編碼習(xí)慣; 接口自動(dòng)化開(kāi)展到一定程度,也會(huì)遇到瓶頸困難,需要變通; 建立數(shù)據(jù)度量,用于反饋改進(jìn)效果; 自己和自己比,建立基線,看趨勢(shì)變好還是變差; 根據(jù)不同階段選擇關(guān)鍵度量數(shù)據(jù),并不斷迭代; 重復(fù)低效的事情,可自動(dòng)化工具解決,提升效率,解放人力
分享嘉賓
汽車(chē)之家經(jīng)銷(xiāo)商BU質(zhì)保負(fù)責(zé)人

15年加入汽車(chē)之家后,輔助所在業(yè)務(wù)團(tuán)隊(duì)逐步搭建起多角色參與、多手段保證的質(zhì)量保證體系;組建工具效能小組,推動(dòng)工具平臺(tái)從0到1的建設(shè),并逐步完善,可提供數(shù)據(jù)工廠、靜態(tài)代碼掃描、接口自動(dòng)化、流量回放平臺(tái)、撥測(cè)系統(tǒng)、性能監(jiān)控等專(zhuān)項(xiàng)能力,并通過(guò)質(zhì)量羅盤(pán)、效率羅盤(pán)等觀測(cè)指標(biāo)提供數(shù)據(jù)反饋,驅(qū)動(dòng)持續(xù)改進(jìn);
來(lái)源:QECon質(zhì)效前沿
-------- THE END --------
