田新昔 王亞剛
摘 要 自動(dòng)化測(cè)試的重要性不言而喻,近幾年,公司上下從領(lǐng)導(dǎo)到員工,對(duì)自動(dòng)化測(cè)試都是日益重視,特別在敏捷流程中,更是不可或缺。但在實(shí)際應(yīng)用中,有時(shí)還是會(huì)有一些疑問,到底自動(dòng)化有哪些好處、自動(dòng)化的作用是什么、自動(dòng)化沒有發(fā)現(xiàn)問題是不是好事等。根據(jù)這幾年在自動(dòng)化方面的工作經(jīng)驗(yàn),得出下面的一些看法。
【關(guān)鍵詞】自動(dòng)化 自動(dòng)化測(cè)試
1 自動(dòng)化的優(yōu)點(diǎn)
1.1 回歸測(cè)試更方便
特別是在程序修改比較頻繁時(shí),效果是非常明顯的,舉兩個(gè)典型的例子,持續(xù)集成,正是由于有著自動(dòng)化測(cè)試的能力,才能順利開展,將很多問題暴露在開發(fā)階段,而不是遺留在后端。軟交換產(chǎn)品規(guī)模龐大,繼承特性用例超過5萬個(gè),正是由于有著強(qiáng)大的回歸測(cè)試能力,才能保證大量的繼承特性質(zhì)量。
1.2 成本低效率高
以較低的成本,在較短的時(shí)間內(nèi)執(zhí)行大量的自動(dòng)化用例。
1.3 降低測(cè)試難度
如,控制在兩個(gè)消息之間增加異常消息,手工很難控制插入異常消息的時(shí)機(jī),但是對(duì)于自動(dòng)化工具來說輕而易舉。
1.4 更好地利用資源
將繁瑣的任務(wù)自動(dòng)化,可以提高準(zhǔn)確性和測(cè)試人員的積極性,將測(cè)試技術(shù)人員解脫出來投入更多精力設(shè)計(jì)更好的測(cè)試用例。
1.5 自動(dòng)化腳本的復(fù)用性
由于自動(dòng)測(cè)試通常采用腳本技術(shù),這樣就有可能只需要做少量的甚至不做修改,實(shí)現(xiàn)在不同的測(cè)試過程中使用相同的用例。
1.6 可信度高
由于測(cè)試是自動(dòng)執(zhí)行的,所以不存在執(zhí)行過程中的疏忽和錯(cuò)誤,基本上完全取決于測(cè)試的設(shè)計(jì)質(zhì)量。
2 自動(dòng)化測(cè)試的缺點(diǎn)
工具本身并無想像力。這個(gè)是最致命的一點(diǎn),這個(gè)就決定了自動(dòng)化測(cè)試永遠(yuǎn)無法完全替代手工測(cè)試,引申出下面幾個(gè)缺陷;
2.1 手工測(cè)試比自動(dòng)測(cè)試發(fā)現(xiàn)的缺陷更多
手工測(cè)試中,人們總是能夠積極擴(kuò)展測(cè)試思路,不僅僅拘泥于測(cè)試用例,自然就容易發(fā)現(xiàn)更多的問題。另外,一個(gè)新版本用例中,可能只有30%-40%的用例能夠自動(dòng)化。
2.2 測(cè)試自動(dòng)化不能提高有效性
自動(dòng)化測(cè)試能發(fā)現(xiàn)的,手工測(cè)試肯定可以發(fā)現(xiàn),但反過來就不一定。
2.3 需要維護(hù)
自動(dòng)化腳本隨著產(chǎn)品的變化,腳本內(nèi)容可能也是需要進(jìn)行修改的,如產(chǎn)品的命令行發(fā)生變化、產(chǎn)品使用的接口新增一個(gè)信元等,都可能導(dǎo)致原有的自動(dòng)化腳本執(zhí)行失敗,這些都是需要有專門的流程、專人來進(jìn)行維護(hù)。
2.4 自動(dòng)化前期投入大、回報(bào)周期長
如,完成一個(gè)自動(dòng)化腳本比手工執(zhí)行一個(gè)用例花費(fèi)時(shí)間更多,并且后期還需要進(jìn)行維護(hù)。所以,當(dāng)產(chǎn)品界面、需求變化比較頻繁時(shí)、開發(fā)周期很短的軟件、或做一次性軟件開發(fā)項(xiàng)目(而不是做軟件產(chǎn)品)時(shí),自動(dòng)化測(cè)試就屬于吃力不討好,投入大而產(chǎn)出小,如表1所示。
3 自動(dòng)化測(cè)試作用
對(duì)于自動(dòng)化測(cè)試的作用,業(yè)界一直有兩種觀點(diǎn):自動(dòng)化是用來發(fā)現(xiàn)問題的(進(jìn)攻),自動(dòng)化是用來保障產(chǎn)品已有特性質(zhì)量的(防守)。從自動(dòng)化的優(yōu)缺點(diǎn)、適用情況和實(shí)際應(yīng)用來看個(gè)人認(rèn)為后者更加符合實(shí)際情況。
以圖1為例來說明自動(dòng)化測(cè)試的組成。這三個(gè)環(huán)境中任一個(gè)環(huán)節(jié)出現(xiàn)問題都會(huì)導(dǎo)致自動(dòng)化測(cè)試失敗。
對(duì)于新增特性:功能模塊、數(shù)據(jù)配置和腳本都屬于新開發(fā),出現(xiàn)問題的幾率大,其中數(shù)據(jù)配置和腳本易于定位修改,當(dāng)環(huán)境和腳本穩(wěn)定后,如果腳本執(zhí)行失敗,功能模塊失效的概率最大;
對(duì)于繼承特性:這三這一般不會(huì)變化,自動(dòng)化測(cè)試失敗的概率很小。
從上分析可以看出,無論手工測(cè)試還是自動(dòng)化測(cè)試,只有在新增特性的測(cè)試中,才能發(fā)現(xiàn)更多的問題,在回歸測(cè)試中很難發(fā)現(xiàn)問題。
自動(dòng)化測(cè)試更加適合保障成品已有特性的質(zhì)量。目前自動(dòng)化測(cè)試的現(xiàn)狀是,自動(dòng)化腳本的質(zhì)量可能存在問題,導(dǎo)致漏測(cè)。由于腳本中只有業(yè)務(wù)流程、沒有對(duì)消息內(nèi)容進(jìn)行檢查,雖然用例執(zhí)行通過了,但是該功能實(shí)際上是有問題的。所以首先要保證自動(dòng)化腳本的質(zhì)量。
總之,手工測(cè)試和自動(dòng)化測(cè)試的目的,都是為了保障產(chǎn)品的特性可用。沒有發(fā)現(xiàn)問題并不說明用例或者自動(dòng)化腳本沒用,而是說明測(cè)試過的特性沒有問題,是一件好事。
(指導(dǎo)老師:王亞剛)
參考文獻(xiàn)
[1]張卉.Web應(yīng)用系統(tǒng)自動(dòng)化軟件測(cè)試技術(shù)研究[D].曲阜師范大學(xué),2016.
[2]邱彥卿.軟件測(cè)試自動(dòng)化技術(shù)及其應(yīng)用研究[D].華中科技大學(xué),2007.
作者單位
西安郵電大學(xué)計(jì)算機(jī)學(xué)院 陜西省西安市 710077