2016年7月22日谨敛,「HPE&msup軟件技術(shù)開放日」將在上海浦東新區(qū),張江高科技園區(qū)納賢路799號科榮大廈小樓2樓舉辦究履,msup攜手HPE揭秘全球測試中心背后的12條技術(shù)實(shí)踐。
徐盛:HPE測試中心總監(jiān)脸狸。徐盛將在本次開放日帶來《軟件測試新趨勢》的分享最仑,在開放日舉辦之前,主辦方特別對徐盛進(jìn)行了采訪,提前劇透在軟件測試新趨勢下HPE如何進(jìn)行測試和質(zhì)量管理泥彤。
msup:移動(dòng)互聯(lián)的到來給測試帶來了哪些挑戰(zhàn)紊搪?
徐盛:開發(fā)移動(dòng)應(yīng)用確實(shí)給我們的開發(fā)和測試人員都帶來了新的挑戰(zhàn)。我們大致總結(jié)了3個(gè)方向的挑戰(zhàn):
1全景、理念
我們傳統(tǒng)軟件的測試更多的是使用固定的測試人員耀石,一般很少引入項(xiàng)目之外的人員來做測試;對于移動(dòng)應(yīng)用爸黄,由于設(shè)備的繁雜性和應(yīng)用場景的復(fù)雜性滞伟,移動(dòng)項(xiàng)目開始越來越多的引入外部測試人員,外包測試工作炕贵,甚至是使用眾測的方式來提高測試的覆蓋率梆奈。
同時(shí),在傳統(tǒng)軟件的測試中称开,我們主要關(guān)注在軟件的功能上亩钟,功能性測試上面花費(fèi)的時(shí)間是最多的。而對于移動(dòng)應(yīng)用鳖轰,由于應(yīng)用場景的不同清酥,測試人員開始把目光投向了以往不是太受重視的非功能測試方面。特別是性能蕴侣,易用性和安全性的測試焰轻。
2、速度
移動(dòng)互聯(lián)的一個(gè)特征就是快速昆雀,不僅包括我們設(shè)備硬件的升級速度辱志,還包括我們應(yīng)用軟件的更新速度。我們現(xiàn)在看一些熱門的移動(dòng)應(yīng)用狞膘,他們的更新速度是以天計(jì)算的揩懒。
這樣高的更新頻率,對我們的開發(fā)和測試都提出了新的要求挽封。我們測試人員在節(jié)奏如此快的項(xiàng)目里已球,需要轉(zhuǎn)變傳統(tǒng)的測試方法,采用周期更短的測試策略场仲。
我們倡導(dǎo)在移動(dòng)應(yīng)用項(xiàng)目里實(shí)施DevOps和悦,通過DevOps所推崇的持續(xù)部署的流程退疫,應(yīng)用 Shift Left(盡早地測試)渠缕、automate
everything(自動(dòng)化測試,自動(dòng)化構(gòu)建褒繁,自動(dòng)化部署)亦鳞,continuous
testing(持續(xù)發(fā)布新版本到QA環(huán)境,無等待的持續(xù)測試)等方法,使測試更敏捷燕差,更快速遭笋,來保障應(yīng)用的快速上線,為公司占得先機(jī)徒探。
3瓦呼、工具 移動(dòng)設(shè)備種類繁多(各種屏幕分辨率,各種ROM定制)测暗,最主流的操作系統(tǒng)至少就有2個(gè) -
安卓央串,iOS,每個(gè)操作系統(tǒng)都有眾多的版本并頻繁更新碗啄,移動(dòng)應(yīng)用開發(fā)技術(shù)的多樣性(原生质和,混合,HTML5稚字,網(wǎng)頁)饲宿,等等這些使得手工測試再也無法保證設(shè)備和功能的高覆蓋。不同于以往胆描,自動(dòng)化成了移動(dòng)應(yīng)用測試的必需品瘫想。桌面系統(tǒng)發(fā)展已經(jīng)很多年了,它的測試工具非常的成熟好用昌讲,像HP
UFT, Selenium等等殿托。相比之下谆甜,移動(dòng)應(yīng)用的測試工具才剛剛起步遵岩,對軟件硬件的支持都有待提高。
選擇一個(gè)適合的測試工具對于我們測試的速度和質(zhì)量都是至關(guān)重要泳唠。我們認(rèn)為一個(gè)合格的移動(dòng)應(yīng)用測試工具需要支持以下幾點(diǎn):
兼容主流的設(shè)備鸠按,操作系統(tǒng)和開發(fā)技術(shù)
同時(shí)支持手工和自動(dòng)化測試
基于屬性的對象識別方法
支持腳本的錄制回放
帶有設(shè)備管理功能礼搁,支持設(shè)備的遠(yuǎn)程訪問
能和持續(xù)集成系統(tǒng)對接
能模擬移動(dòng)網(wǎng)絡(luò)環(huán)境
選好工具,用好工具才能使我們的測試如魚得水目尖,快速高效馒吴。
msup:大數(shù)據(jù)技術(shù)在質(zhì)量領(lǐng)域會(huì)帶來哪些新的變化?
徐盛:傳統(tǒng)的質(zhì)量管理一般是以定性分析和質(zhì)量管理人員的主觀判斷為主瑟曲,雖然也會(huì)在很大程度上依賴于量化管理指標(biāo)對組織和個(gè)人進(jìn)行量化管理和考核饮戳,但是這些指標(biāo)大多是離散的、不相關(guān)的洞拨,這就導(dǎo)致了傳統(tǒng)質(zhì)量管理的決策在很多情況下是片面的扯罐,而滯后的分析報(bào)表為決策層帶來的信息通常都是“馬后炮”,無法為組織建立起有一定預(yù)防能力的質(zhì)量管理體系烦衣。
而大數(shù)據(jù)技術(shù)的發(fā)展為質(zhì)量領(lǐng)域帶來數(shù)據(jù)化管理的革新歹河,使企業(yè)可以充分利用在長期的企業(yè)質(zhì)量管理中積累下的歷史數(shù)據(jù)掩浙,以及在當(dāng)前的質(zhì)量管理活動(dòng)中實(shí)時(shí)產(chǎn)生的各項(xiàng)數(shù)據(jù),如人員秸歧、計(jì)劃厨姚、需求、用例键菱、缺陷等谬墙,以全量數(shù)據(jù)分析替代片面數(shù)據(jù)計(jì)算,以實(shí)時(shí)數(shù)據(jù)展現(xiàn)補(bǔ)充滯后報(bào)表分析经备,以多維度數(shù)據(jù)融合提高度量指標(biāo)價(jià)值芭梯,幫助企業(yè)進(jìn)行基于數(shù)據(jù)的客觀化質(zhì)量管理。
而作為大數(shù)據(jù)技術(shù)的核心弄喘,數(shù)學(xué)建模和分析預(yù)測可以使質(zhì)量管理在實(shí)時(shí)分析的基礎(chǔ)上更進(jìn)一步玖喘,為企業(yè)建立缺陷預(yù)測和風(fēng)險(xiǎn)預(yù)防的能力,真正使企業(yè)在質(zhì)量管理中做到防患于未然蘑志,節(jié)省質(zhì)量問題所帶來的成本和損失累奈,在此之上更是可以建立起計(jì)算機(jī)的輔助決策能力,為決策者提供基于數(shù)據(jù)的客觀依據(jù)急但,減少主觀情感和判斷在決策中的不利影響澎媒。
數(shù)據(jù)可視化在大數(shù)據(jù)技術(shù)的推動(dòng)下從傳統(tǒng)的直方圖、趨勢圖波桩、餅圖等維度單一的展現(xiàn)方式進(jìn)化為動(dòng)態(tài)的戒努、交互的、多維的可視化展現(xiàn)方式镐躲,以幫助用戶快速直接地從海量數(shù)據(jù)中定位到所需的信息储玫,在質(zhì)量領(lǐng)域,力導(dǎo)向圖萤皂、弦圖撒穷、桑基圖等都有很好的應(yīng)用場景裆熙。
msup:如何提升全員的質(zhì)量意識端礼?
徐盛:提高全員的質(zhì)量意識非一日之功,我們覺得需要自上而下的在組織內(nèi)建立全員質(zhì)量管理的文化入录,并落地實(shí)施蛤奥,持續(xù)改進(jìn)。
具體實(shí)踐如下:
?1僚稿、定義組織的質(zhì)量方針和質(zhì)量策略來指導(dǎo)整個(gè)質(zhì)量管理凡桥;?
2、加強(qiáng)和各層級員工的溝通贫奠;
3唬血、定義質(zhì)量屬性度量的性能指標(biāo)(包括績效;指標(biāo))唤崭,并據(jù)此建立在項(xiàng)目管理中反應(yīng)該系列指標(biāo)的項(xiàng)目對應(yīng)指標(biāo)
4拷恨、建立質(zhì)量管理系統(tǒng),在項(xiàng)目團(tuán)隊(duì)中建立產(chǎn)品意識谢肾,質(zhì)量意識腕侄,實(shí)施質(zhì)量管理并持續(xù)改進(jìn); 5芦疏、把質(zhì)量相關(guān)的績效指標(biāo)集成進(jìn)入個(gè)人績效指標(biāo)冕杠;
6、重復(fù)以上步驟并持續(xù)改進(jìn)酸茴。
msup:測試管理的難點(diǎn)在哪幾個(gè)方面分预?
徐盛:測試管理在項(xiàng)目級別和組織級別各有不同的難點(diǎn)。?
項(xiàng)目級:?
測試估算?
測試風(fēng)險(xiǎn)的管理?
測試和開發(fā)的高效集成?
測試流程改進(jìn)(TPI)
組織級:?
測試人員績效的考核及其真實(shí)性和有效性?
測試價(jià)值的量化和顯性化?
有限的測試投資組合薪捍,質(zhì)量價(jià)值最大化
測試中心的透明性笼痹,高層人員對全部測試項(xiàng)目狀況的及時(shí)了解?
測試中心的知識管理?
測試中心技術(shù)路線制定和技術(shù)儲(chǔ)備?
測試管理體系和度量系統(tǒng)
測試組織成熟度評估(TMMi)
msup:企業(yè)級軟件測試和互聯(lián)網(wǎng)測試的不同有哪些?
徐盛:首先酪穿,企業(yè)級軟件凳干,特別是大型企業(yè)的業(yè)務(wù)邏輯本身十分復(fù)雜,造成了軟件系統(tǒng)特別復(fù)雜被济,比如惠普就有2000多個(gè)相互連接的內(nèi)部IT系統(tǒng)救赐,每一個(gè)流程域都有幾十個(gè)上下游程序,程序之間互相連接加護(hù)只磷,合作完成某一個(gè)業(yè)務(wù)流程经磅。因此測試人員需要對業(yè)務(wù)系統(tǒng)本身和上下游系統(tǒng)的數(shù)據(jù)及協(xié)調(diào)要求有深刻的理解∨プ罚互聯(lián)網(wǎng)企業(yè)的業(yè)務(wù)邏輯往往是To
C的馋贤,因此相對已經(jīng)做過了簡化,對邏輯本身的功能測試其實(shí)相對簡化畏陕,但是對易用性配乓,性能包括安全性測試的要求會(huì)更加看重。
其次惠毁,企業(yè)級軟件往往有系統(tǒng)的歷史比較悠久犹芹,采購或開發(fā)采用的架構(gòu)和技術(shù)五花八門,從集中式鞠绰,到B/S到C/S到SaaS到APP都有腰埂;而且因?yàn)槠髽I(yè)軟件往往是完成一個(gè)功能,軟件是用什么技術(shù)開發(fā)的是第二位的蜈膨,因此企業(yè)的軟件生態(tài)系統(tǒng)的技術(shù)比較復(fù)雜屿笼。因此對于測試軟件牺荠,特別是功能自動(dòng)化測試軟件需要考慮滿足各種類型和技術(shù)的產(chǎn)品的自動(dòng)化要求。而對于互聯(lián)網(wǎng)企業(yè)驴一,網(wǎng)站本身就是企業(yè)的核心競爭力休雌,需要精益求精,而且因?yàn)闆]有歷史包袱肝断,技術(shù)一致性比較好杈曲,加上功能測試相對簡單,測試人員和開發(fā)人員又相互交叉胸懈,因此選擇的自動(dòng)化測試框架多是開源的框架担扑。
再次,企業(yè)級軟件系統(tǒng)由于比較復(fù)雜趣钱,往往是網(wǎng)狀的拓?fù)浣Y(jié)構(gòu)涌献,系統(tǒng)之間相互勾連,牽一發(fā)而動(dòng)全身首有。因此測試時(shí)測試環(huán)境和數(shù)據(jù)的準(zhǔn)備就需要花大量的時(shí)間洁奈,保證測試環(huán)境的互聯(lián)互通和數(shù)據(jù)一致性就需要花大量的時(shí)間〗首疲互聯(lián)網(wǎng)企業(yè)往往是以一個(gè)核心系統(tǒng)為主的星狀甚至是點(diǎn)狀結(jié)構(gòu)利术,因此測試環(huán)境的準(zhǔn)備相對依賴性比較小,甚至可以利用云和虛擬化的技術(shù)實(shí)時(shí)生成測試環(huán)境加載測試數(shù)據(jù)進(jìn)行測試低矮。
最后印叁,企業(yè)級軟件的大部分需求比較清楚,加上本身系統(tǒng)和邏輯的復(fù)雜性军掂,項(xiàng)目開發(fā)選用V模型比較多轮蜕,工作方式是先計(jì)劃再干。測試計(jì)劃上特別需要考慮上下游系統(tǒng)在計(jì)劃上的配合蝗锥。而互聯(lián)網(wǎng)企業(yè)由于需求主要由產(chǎn)品經(jīng)理估計(jì)跃洛,因此不確定性更大,加上環(huán)境變化快终议,需要更新更加頻繁汇竭,因此開發(fā)方式更多采用敏捷的方式,邊干邊看邊改穴张。測試的工作方式要符合整個(gè)項(xiàng)目的工作方式的選擇细燎。
沒有誰對誰錯(cuò),誰先進(jìn)誰落后皂甘,其實(shí)根據(jù)企業(yè)的自身情況選用合適的測試方法才是正確的答案玻驻。兩邊也會(huì)相互融合借鑒。比如傳統(tǒng)企業(yè)也有手機(jī)APP應(yīng)用偿枕,那其開發(fā)和測試方式就和互聯(lián)網(wǎng)企業(yè)接近璧瞬。反之户辫,互聯(lián)網(wǎng)企業(yè),特別是大的互聯(lián)網(wǎng)企業(yè)嗤锉,隨著系統(tǒng)的不斷發(fā)展和復(fù)雜渔欢,也會(huì)面臨傳統(tǒng)企業(yè)現(xiàn)在面對的復(fù)雜邏輯和網(wǎng)狀系統(tǒng)的功能測試的復(fù)雜性問題。
msup:現(xiàn)在測試的崗位在硅谷已經(jīng)逐漸消失了档冬,但是測試的工作還在一直繼續(xù)膘茎,這種趨勢會(huì)帶來哪些影響桃纯,現(xiàn)在的測試人員應(yīng)該如何應(yīng)對這種變化酷誓?
徐盛:所謂的硅谷沒有測試職位的話是不準(zhǔn)確的。首先硅谷本身的大型互聯(lián)網(wǎng)企業(yè)和傳統(tǒng)IT企業(yè)依然還有保留有軟件測試的職位态坦。只不過因?yàn)楣韫鹊母叱杀狙问鞔罂鐕髽I(yè)會(huì)把新增的純黑盒功能型測試等相對低價(jià)值的職位外包到印度等低成本的地點(diǎn),這個(gè)是可以理解的伞梯。而且玫氢,由于DevOps,測試和開發(fā)的融合谜诫,有些測試職位是以開發(fā)的形式在招聘漾峡。另外在很多其他專門測試職位,比如測試經(jīng)理安全性測試喻旷,依然存在生逸。舉個(gè)例子,在SimplyHired網(wǎng)站上在San?Jose就有1400多個(gè)QA測試相關(guān)的職位(2016年7月18號搜索)且预。
另外任何IT人士槽袄,包括測試人員都需要不斷提高自身的能力和價(jià)值。我們也總結(jié)出了測試人員發(fā)展的所謂“火山口模型”锋谐。在會(huì)上可以跟大家詳細(xì)的分享遍尺。
msup:測試用例的設(shè)計(jì)需要一定的測試方法和思維,這方面的能力應(yīng)該如何培養(yǎng)涮拗?
徐盛:如何培養(yǎng)設(shè)計(jì)測試用例的測試方法和思維有如下建議: 1乾戏、系統(tǒng)學(xué)習(xí)軟件測試用例設(shè)計(jì)方法,可以參考業(yè)界的標(biāo)準(zhǔn)三热,如ISTQB歧蕉;
2、結(jié)合測試團(tuán)隊(duì)和被測系統(tǒng)實(shí)際情況康铭,建立組織內(nèi)的測試設(shè)計(jì)最佳實(shí)踐惯退; 3、更多的站在用戶角度來考慮被測系統(tǒng)从藤,持續(xù)提高用戶體驗(yàn)催跪;
4锁蠕、積極參加各種測試沙龍,測試峰會(huì)等測試交流活動(dòng)懊蒸,持續(xù)學(xué)習(xí)和改進(jìn)荣倾。