自動(dòng)化測(cè)試成本與收益
在測(cè)試領(lǐng)域,很多的測(cè)試從業(yè)人員都在討論或者曾經(jīng)討論過自動(dòng)化測(cè)試。支持者認(rèn)為自動(dòng)化能夠提高測(cè)試效率,減少枯燥繁瑣的用例執(zhí)行。持反對(duì)意見人的當(dāng)心自動(dòng)化測(cè)試的引入成本太大,反而沒有手工測(cè)試來的高效。更有人當(dāng)心自動(dòng)化測(cè)試無法保證軟件的質(zhì)量,其實(shí)能否保證軟件的質(zhì)量,不是由自動(dòng)化測(cè)試決定,而是取決于你的用例的設(shè)計(jì)。對(duì)于新的事物,在沒有任何實(shí)踐的基礎(chǔ)上不能輕易地下結(jié)論,因?yàn)槊總€(gè)人都有慣性的思維,有時(shí)候很難跳出固有的思維去考慮新的事物。
自動(dòng)化測(cè)試本身作為一種測(cè)試的手段不存在任何的問題。它的好與壞,本質(zhì)是由其最終結(jié)果來決定的。如果自動(dòng)化測(cè)試帶來收益大于我們投入的成本,那么自動(dòng)化測(cè)試就是成功的。我們要做的就是在自動(dòng)化測(cè)試實(shí)施過程中去提高我們的收益,去降低我們的成本。
何為自動(dòng)化測(cè)試?自動(dòng)化測(cè)試是希望能夠通過自動(dòng)化測(cè)試工具或其他手段,按照測(cè)試工程師的預(yù)定計(jì)劃進(jìn)行自動(dòng)的測(cè)試。目的是減輕手工測(cè)試的勞動(dòng)量,騰出更多的時(shí)間和精力去測(cè)試重要模塊,同時(shí)又保證已有覆蓋自動(dòng)化測(cè)試的模塊的質(zhì)量,從而達(dá)到提高軟件質(zhì)量的目的。自動(dòng)化測(cè)試的目的在于發(fā)現(xiàn)原有模塊引入的新缺陷,保證已有功能的質(zhì)量。
自動(dòng)化測(cè)試開展的前提
首先部門或者公司要從管理層次上支持你,其次要有專門的測(cè)試團(tuán)隊(duì)去建立適合自動(dòng)化測(cè)試的測(cè)試流程、測(cè)試體系,排除上面的因數(shù)之外我總結(jié)了自動(dòng)化測(cè)試一些前提條件。
1. 長期性
指的是被測(cè)產(chǎn)品(或功能)是否需要一個(gè)長期的維護(hù),因?yàn)槎唐诘捻?xiàng)目是沒有實(shí)現(xiàn)自動(dòng)化測(cè)試的必要的,短期的項(xiàng)目很明顯他的投入成本肯定大于其收益。
2. 穩(wěn)定性
被測(cè)產(chǎn)品(或功能)是否有一個(gè)相對(duì)穩(wěn)定的產(chǎn)品。如果功能和界面都處于不穩(wěn)定階段而且經(jīng)常發(fā)生變化的,那腳本和用例的維護(hù)成本是非常高的,
所以也是不具備實(shí)施自動(dòng)化的前提條件。
3. 合適測(cè)試工具
(工欲善其事,必先利其器)
假如被測(cè)產(chǎn)品(或功能)難以通過工具識(shí)別其控件的話
假如使用腳本語言難懂難學(xué),而且擴(kuò)展性差。
4. 人員
你的產(chǎn)品組內(nèi)是否具備合適人員去開展自動(dòng)化,是否具備一定合適的人去做自動(dòng)化腳本開發(fā)。自動(dòng)化測(cè)試實(shí)施的好與壞,很大程度上取決于該測(cè)試工程師,因?yàn)橐行?shí)施自動(dòng)化測(cè)試,單一的測(cè)試工具的熟練是遠(yuǎn)遠(yuǎn)不夠的,他需要其它一些輔助的測(cè)試手段,所以同時(shí)也就需要該測(cè)試工程師具備一定的方案解決能力,能夠找到較優(yōu)的方案來解決現(xiàn)實(shí)中碰到的問題。
5. 用例
自動(dòng)化測(cè)試需要好的測(cè)試用例的輔助,這個(gè)應(yīng)該是大家的共識(shí),所以不展開來講。所以這里希望我們的自動(dòng)化測(cè)試工程師需要與用例設(shè)計(jì)者進(jìn)行密切的合作。
整體來說自動(dòng)化測(cè)試能否有效開展,能否有效的實(shí)施,不是單一取決于某一個(gè)人或者某自動(dòng)化測(cè)試工程師的能力,他是整個(gè)團(tuán)隊(duì)合作的結(jié)果。
自動(dòng)化測(cè)試成本
這是領(lǐng)導(dǎo)們最關(guān)心的問題。因?yàn)樗麄兌枷M詣?dòng)化測(cè)試帶來的收益要遠(yuǎn)大于所投入的成本。不然怎么體現(xiàn)自動(dòng)化測(cè)試價(jià)值?如果沒有價(jià)值還不如直接手工測(cè)試來的干脆。
那么自動(dòng)化成本有哪些?
1、調(diào)研成本
2、腳本開發(fā)維護(hù)成本
3、自動(dòng)化用例設(shè)計(jì)與維護(hù)成本
4、資源投入成本
如何有效的降低自動(dòng)化測(cè)試成本呢?
一、 提高調(diào)研成本,減少人為因數(shù)成本
調(diào)研成本省不了,而且要加大投入,如果投入成本不大,選擇的工具和框架都不適合自動(dòng)化的開展,那么自動(dòng)化測(cè)試肯定以失敗告終。一旦給自動(dòng)化測(cè)試選好了型,后期的轉(zhuǎn)化成本非常的高,所以一開始就要選擇合適的工具和框架。
當(dāng)然為了盡量減少調(diào)研成本,需要選擇合適人,需要整個(gè)團(tuán)隊(duì)的配合。
二、 選擇好的測(cè)試工具
選擇好的測(cè)試工具,首先要看其所使用的語言是否容易普及,是否功能強(qiáng)大,在自動(dòng)化測(cè)試工具當(dāng)中,我認(rèn)為最重要的是GUI對(duì)象的識(shí)別能力,第三方接口的處理能力。
三、 構(gòu)建合適的測(cè)試框架
有了好的測(cè)試工具之后,我們需要一個(gè)合適的測(cè)試框架,測(cè)試框架應(yīng)該是一個(gè)企業(yè)級(jí)的應(yīng)用,而不是單一的產(chǎn)品和功能。它至少可以減少重復(fù)代碼編寫,包含常用的操作,簡單的配置或自動(dòng)配置,運(yùn)行結(jié)果自動(dòng)收集,運(yùn)行結(jié)果簡潔且容易分析。
四、 選擇合適的人,減少研究,實(shí)施投入成本
這里我主要講是選擇合適的人,做正確的事上。那么什么樣的人適合做自動(dòng)化測(cè)試呢,首先的一點(diǎn)肯定要有一定的代碼編寫能力。其次我覺得需要一定軟件工程的思想。沒有好的思想,是很難組織起清晰架構(gòu)的代碼來的。
合適人,做正確的事。這里就充分體現(xiàn)管理者能力了,尤其是測(cè)試框架上的研究,往往不是靠單一的人所能夠做到,因?yàn)闀?huì)受到知識(shí)體系,思維,能力等相關(guān)的束縛。所以我的意見是這些應(yīng)該是交給一個(gè)組織,該組織內(nèi)集合測(cè)試負(fù)責(zé)人,測(cè)試工程師,自動(dòng)化測(cè)試工程師,來依靠團(tuán)隊(duì)的力量來打造合適的測(cè)試框架。當(dāng)然框架的實(shí)現(xiàn)上應(yīng)該交給自動(dòng)化測(cè)試工程師。
那么什么樣的人才是合適的呢
1、需要有一定的手工測(cè)試經(jīng)驗(yàn)和自動(dòng)化測(cè)試經(jīng)驗(yàn),能知道測(cè)試框架為誰而做,需要做什么?
2、能夠?qū)?fù)雜的設(shè)計(jì)簡單化,能夠充分理解軟件工程的思想,將最簡單的應(yīng)用提供給測(cè)試工程師
五、 減少用例的設(shè)計(jì)維護(hù)成本
如果有好的框架支撐的話,那么用例的設(shè)計(jì)維護(hù)成本完全是可以減少的。
六、 保持腳本整體架構(gòu)清晰易懂,易維護(hù)
七、 合適的加大資源投入成本
我覺得資源投入成本是值得的,資源投入如果能夠減少人力的投入的話。我想是所有管理者都愿意看到的。
自動(dòng)化測(cè)試收益
在如何評(píng)價(jià)自動(dòng)化測(cè)試收益方面,每個(gè)人的角度不通過,得出結(jié)果可能也不相同。我想從以下幾個(gè)方面來看自動(dòng)化收益:
1、快速測(cè)試
測(cè)試人員手工測(cè)試多個(gè)功能,測(cè)試執(zhí)行的并行度總有個(gè)上限。而多個(gè)并行執(zhí)行的自動(dòng)化測(cè)試腳本可以更快速地驗(yàn)證版本,一次性地報(bào)告問題
2、降低手工測(cè)試投入成本
將功能測(cè)試人員從繁瑣重復(fù)的測(cè)試中解脫出來,有更多的時(shí)間和精力去進(jìn)行一些探索性的測(cè)試。
3、提供了軟件的質(zhì)量
自動(dòng)化測(cè)試能夠幫助我們減少生產(chǎn)環(huán)境中某種特定類型的缺陷。這些缺陷包括環(huán)境或者配置相關(guān)的缺陷、在主流程上本來正常但因?yàn)楹笃谛薷挠绊懙降墓δ堋⒁约叭菀妆缓雎缘牡胤降?/div>
4、提高了我們對(duì)軟件質(zhì)量的信心
5、自動(dòng)化測(cè)試可以喚起更高的工作熱情
這一方面來自于可以部分地將測(cè)試人員從大量重復(fù)的測(cè)試執(zhí)行中解放出來,另一方面來自于新技術(shù)、新工具帶來的新鮮感
如何有效地提高自動(dòng)化測(cè)試收益?
要有效的開展自動(dòng)化,一定程度上來說,成本是很難降低的,只有將收益最大化。增加收益的方式有很多種:
一、提高自動(dòng)化測(cè)試迭代次數(shù),提高自動(dòng)化的使用頻率
要提高自動(dòng)化的使用頻率,就需要將原有觀念自動(dòng)化測(cè)試收益往往來源于回歸階段進(jìn)行更正,實(shí)際證明自動(dòng)化同樣可以在日常測(cè)試中發(fā)揮作用。自動(dòng)化的使用用例的重復(fù)性使用頻率越高,其價(jià)值也就越大,其收益也會(huì)越大。
二、腳本復(fù)用,提高腳本對(duì)應(yīng)功能點(diǎn)的用例覆蓋率
提高該腳本所覆蓋功能點(diǎn)的用例覆蓋,也就是我們不但要考慮減少了自動(dòng)化腳本開發(fā)成本以及降低維護(hù)成本,同時(shí)也要考慮該腳本帶來的收益已盡量去最大化。
三、提高自動(dòng)化用例的覆蓋率,最大程度上減少手工重復(fù)的勞動(dòng)
盡可能的提高用例的覆蓋率,并通過自動(dòng)化來代替我們的手工測(cè)試,這樣不但能在保證軟件質(zhì)量的同時(shí)減少手工重復(fù)的勞動(dòng),
四、建立并維護(hù)好測(cè)試用例庫,幫助我們節(jié)省資源并快速培養(yǎng)測(cè)試人員
五、推廣成功案例到其它產(chǎn)品
posted on 2014-08-28 09:33 順其自然EVO 閱讀(532) 評(píng)論(0) 編輯 收藏 所屬分類: 測(cè)試學(xué)習(xí)專欄
只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。 | ||
![]() |
||
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
|
||
相關(guān)文章:
|
||