喻偉
摘要:隨著軟件工程越來(lái)越復(fù)雜,軟件的重要性也越來(lái)越大。軟件測(cè)試是一門(mén)涉及廣泛知識(shí)的學(xué)科,軟件測(cè)試行業(yè)在國(guó)內(nèi)方興未艾,測(cè)試工程師門(mén)需掌握各種測(cè)試技術(shù)和工具,測(cè)試團(tuán)隊(duì)的管理也需完善和提高。論文介紹了軟件測(cè)試的含義、特點(diǎn),還介紹了相關(guān)一下輔助工具;還簡(jiǎn)述了執(zhí)行自動(dòng)化測(cè)試的項(xiàng)目條件,還有測(cè)試的過(guò)程。
關(guān)鍵詞:自動(dòng)化測(cè)試;手工測(cè)試;測(cè)試工具;功能測(cè)試;回歸測(cè)試
1自動(dòng)化測(cè)試的含義
1.1自動(dòng)化測(cè)試
自動(dòng)化測(cè)試是測(cè)試人員將人工操作行為轉(zhuǎn)換為機(jī)器執(zhí)行,從而減少頻繁重復(fù)工作的內(nèi)容,減輕工作量,還可以達(dá)到省時(shí)省力。通常在編寫(xiě)完測(cè)試用例并通過(guò)各部門(mén)的評(píng)審后,執(zhí)行人員會(huì)按照測(cè)試用例描述的操作步驟依次執(zhí)行測(cè)試,然后將返回內(nèi)容與預(yù)期內(nèi)容進(jìn)行對(duì)比,驗(yàn)證是否滿(mǎn)足實(shí)際。在這個(gè)過(guò)程,為了獲得更優(yōu)秀的效率,便有了對(duì)使用機(jī)器執(zhí)行操作的訴求。
自動(dòng)化測(cè)試,即是使用機(jī)器替代人力進(jìn)行的一系列測(cè)試驗(yàn)證工作,它關(guān)注的是,整個(gè)驗(yàn)證過(guò)程是由電腦按照既定邏輯自動(dòng)實(shí)現(xiàn)的,更表現(xiàn)了自動(dòng)化的思維。
1.2自動(dòng)化和手工區(qū)別
部分測(cè)試人員和一些不明白自動(dòng)化測(cè)試的程序員、產(chǎn)品經(jīng)理、項(xiàng)目經(jīng)理甚至老板,一直對(duì)手工測(cè)試和自動(dòng)化測(cè)試這兩種方法存在很多爭(zhēng)議的,但其實(shí)這兩種測(cè)試方法應(yīng)一直并存存在,誰(shuí)也無(wú)法取締誰(shuí),各自存在不同的優(yōu)劣勢(shì)。
手工測(cè)試也因有其缺點(diǎn),亟需一種補(bǔ)充手段,在這需求背景下自動(dòng)化測(cè)試應(yīng)運(yùn)而生,但自動(dòng)化測(cè)試不應(yīng)全盤(pán)接受,將手工測(cè)試棄之如敝履,因?yàn)閷?duì)數(shù)據(jù)和業(yè)務(wù)邏輯的正確性檢驗(yàn)、人們對(duì)美觀(guān)的具現(xiàn)化,這些都是人才能具備,機(jī)械在現(xiàn)階段技術(shù)水平暫無(wú)法踏足。
但是測(cè)試只使用手工方式,那么就會(huì)出現(xiàn)比較低的測(cè)試工作效率,無(wú)法實(shí)現(xiàn)高效率,尤其重復(fù)工作如回歸測(cè)試等,這種無(wú)味且枯燥的工作重復(fù),就使得測(cè)試人員造成壓力、情緒低落等不良影響。這就是自動(dòng)化應(yīng)一種補(bǔ)充的手段,而不應(yīng)取代手工。
1.3自動(dòng)化測(cè)試的優(yōu)缺點(diǎn):
1.3.1優(yōu)點(diǎn):
1)對(duì)系統(tǒng)項(xiàng)目開(kāi)展回歸驗(yàn)證的更有效率。在接口層面更是效果顯著。因接口測(cè)試的實(shí)現(xiàn)是按照用例的操作步驟設(shè)計(jì)的,易于將結(jié)果與設(shè)計(jì)的理想值對(duì)比,機(jī)械大量一起執(zhí)行,因而效率極大得到提升,加快項(xiàng)目進(jìn)度。
2)可以執(zhí)行更多重復(fù)性高的測(cè)試。無(wú)論是API還是UI自動(dòng)化,可讓大量重復(fù)性的測(cè)試在極短的時(shí)間運(yùn)行完畢,避免人工因大量重復(fù)造成錯(cuò)漏。
3)可以執(zhí)行一些手工測(cè)試幾乎不能完成的測(cè)試任務(wù)。舉例對(duì)于性能測(cè)試的執(zhí)行需要幾千幾萬(wàn)的人員,1s內(nèi)同時(shí)點(diǎn)擊、秒殺,同時(shí)瀏覽商品詳情頁(yè)面,同時(shí)登錄等,但是卻可以通過(guò),編寫(xiě)腳本,通過(guò)調(diào)控并發(fā)數(shù),模擬巨量用戶(hù)操作,完成性能檢測(cè)任務(wù)。
4)測(cè)試資源的釋放。自動(dòng)化實(shí)現(xiàn)繁多且枯燥的操作,從而使機(jī)械式的工作狀態(tài)的人員得以解放,有有條件創(chuàng)造更好的測(cè)試框架和用例??梢宰寽y(cè)試人員專(zhuān)注于流程、業(yè)務(wù)、界面、數(shù)據(jù)驗(yàn)證部分,提高手工測(cè)試的準(zhǔn)確性和效率。
1.3.2缺點(diǎn):
自動(dòng)化測(cè)試無(wú)法百分百的發(fā)現(xiàn)系統(tǒng)中全部問(wèn)題,但自動(dòng)化測(cè)試也能發(fā)現(xiàn)軟件包含了負(fù)載測(cè)試,性能測(cè)試,回歸測(cè)試等百分之三十三點(diǎn)三的問(wèn)題。而業(yè)務(wù)邏輯、頁(yè)面設(shè)計(jì)錯(cuò)誤的百分之七十二點(diǎn)七的問(wèn)題發(fā)現(xiàn),則現(xiàn)技術(shù)不能完成,
1.4手工測(cè)試的不可替代性
工具只能執(zhí)行既定策略進(jìn)行測(cè)試任務(wù),不具備自主辨別邏輯錯(cuò)誤的能力,而人恰恰擅長(zhǎng)于此,這就成了不可替代手工的原因。具體表示在以下幾點(diǎn):
1)設(shè)計(jì):測(cè)試經(jīng)驗(yàn)、對(duì)業(yè)務(wù)錯(cuò)誤的設(shè)想能力是工具不具備的。
2)系統(tǒng)的體驗(yàn)方面:隨機(jī)不按既定邏輯的操作,對(duì)美的理解都是工具腳本難以實(shí)現(xiàn)的領(lǐng)域。
3)正確性的檢驗(yàn):工具對(duì)正確性的判斷都來(lái)自程序員,不具備智能理解需求的能力。
2使用自動(dòng)化測(cè)試的前提條件
自動(dòng)化測(cè)試有其實(shí)行的前提條件,要分析系統(tǒng)的開(kāi)發(fā)模型,與實(shí)施自動(dòng)化是否適合,一般需考慮以下幾點(diǎn):
2.1 需求變動(dòng)是否頻繁
需求變動(dòng)會(huì)引起測(cè)試用例的更新或者失效,從而相應(yīng)以此為基的自動(dòng)化腳本也會(huì)發(fā)生更新或者失效。當(dāng)腳本發(fā)生改變后需要調(diào)試修改,甚至需要開(kāi)發(fā)新的組件包來(lái)滿(mǎn)足測(cè)試需求,都更大了加重了測(cè)試成本。這樣與實(shí)現(xiàn)自動(dòng)化降低測(cè)試成本的目的相違背,這樣可以將這項(xiàng)目的自動(dòng)化測(cè)試實(shí)施標(biāo)記為失敗。
對(duì)于系統(tǒng)整體功能需求是穩(wěn)定的,修改多數(shù)存在邏輯相關(guān)較多的小部分功能時(shí),可以有選擇地將穩(wěn)定功能實(shí)現(xiàn)自動(dòng)化。
2.2 項(xiàng)目周期足夠長(zhǎng)
因自動(dòng)化框架和自動(dòng)化腳本編寫(xiě)都是需要開(kāi)發(fā),需要一個(gè)或多個(gè)技術(shù)強(qiáng)、經(jīng)驗(yàn)豐富的測(cè)試人員或測(cè)試開(kāi)發(fā)人員,成本往往不低,實(shí)現(xiàn)都需要一定時(shí)間,如果項(xiàng)目規(guī)模小,復(fù)用性比較低,那么將其測(cè)試工作自動(dòng)化,明顯是一個(gè)不劃算的行動(dòng)。
2.3 自動(dòng)化測(cè)試腳本可重復(fù)使用
自動(dòng)化腳本需要一個(gè)或多個(gè)技術(shù)強(qiáng)、經(jīng)驗(yàn)豐富的測(cè)試人員或測(cè)試開(kāi)發(fā)人員,成本往往不低,所以應(yīng)制定一套框架和標(biāo)準(zhǔn)提供復(fù)用性,最大化經(jīng)濟(jì)效益。
2.4做“驗(yàn)證”,效果更好
因?yàn)樽詣?dòng)化測(cè)試存在一定的缺點(diǎn),不擅長(zhǎng)發(fā)現(xiàn)問(wèn)題,而是更擅長(zhǎng)對(duì)問(wèn)題修改的驗(yàn)證,或是用于對(duì)系統(tǒng)進(jìn)行改動(dòng)后,對(duì)原有功能進(jìn)行可用性檢查。
3自動(dòng)化測(cè)試框架的實(shí)現(xiàn)過(guò)程
3.1 需求分析
當(dāng)項(xiàng)目有實(shí)現(xiàn)自動(dòng)化的條件、技術(shù)和資源時(shí)。測(cè)試領(lǐng)導(dǎo)們就可以針對(duì)于項(xiàng)目開(kāi)發(fā)測(cè)試過(guò)程,考慮各方面的因素,以便于后續(xù)自動(dòng)化測(cè)試工作的開(kāi)展實(shí)現(xiàn)。
3.2自動(dòng)化測(cè)試框架的搭建
以小型公司UI自動(dòng)化為例,用最簡(jiǎn)單實(shí)際的方式。
3.2.1要關(guān)注業(yè)務(wù)。
當(dāng)架構(gòu)師或tester只為了炫技,為了實(shí)現(xiàn)而實(shí)現(xiàn),不貼合業(yè)務(wù),不能確實(shí)為測(cè)試工作做出貢獻(xiàn),這樣偏離自動(dòng)化的初衷,導(dǎo)致項(xiàng)目測(cè)試質(zhì)量下降,造成損失。
3.2.2標(biāo)準(zhǔn)化,先苦后甜
有統(tǒng)一的技術(shù)棧,運(yùn)行環(huán)境,代碼風(fēng)格,使得閱讀性、可維護(hù)性都會(huì)上一個(gè)臺(tái)階,在框架工具包和test case日益增多時(shí),更能體現(xiàn)標(biāo)準(zhǔn)化在效率和質(zhì)量上的可貴。
3.2.3理性看待、合理運(yùn)用
要計(jì)算自動(dòng)化的實(shí)現(xiàn)成本,效益和成本的不匹配,不適合做自動(dòng)化的就不要強(qiáng)求。但也不應(yīng)自動(dòng)化暫時(shí)實(shí)現(xiàn)得不好就否定它。未來(lái)AI發(fā)展也會(huì)影響測(cè)試行業(yè),自動(dòng)化的發(fā)展會(huì)乘風(fēng)再踏上另一個(gè)臺(tái)階。
4結(jié)束語(yǔ)
在本論文的寫(xiě)作過(guò)程中,通過(guò)上網(wǎng)和查閱書(shū)籍收集相關(guān)資料從中了解到了軟件測(cè)試的發(fā)展歷程,軟件自動(dòng)化測(cè)試的由來(lái),自動(dòng)化測(cè)試的性能和其所用的工具,這些工具所使用的使用范圍。
參考文獻(xiàn):
[1]《輕輕松松自動(dòng)化測(cè)試》 作者,朱少民,由電子工業(yè)出版社于2009-7-1出版
[2]姚征。對(duì)機(jī)械設(shè)計(jì)制造及 其自動(dòng)化專(zhuān)業(yè)課程設(shè)置的探討[J].電子制作,2014(6)。
[3]王冬冬。分析機(jī)械設(shè)計(jì)制造及其自動(dòng)化中計(jì)算機(jī)技術(shù)的應(yīng)用研究,2017。
沈陽(yáng)理工大學(xué)應(yīng)用技術(shù)學(xué)院