對DevOps來說,即便自動化測試比人工測試帶來的收益更大,人工測試依然是軟件開發(fā)過程中的一個重要部分。中培《軟件自動化性能測試》專家劉老師指出,即便沒有別的原因,為了將測試自動化,我們至少也得手動執(zhí)行一次測試來驗證。
接受測試( Acceptance testing)尤其難以替代,即使有人嘗試去這么做。即使對那些開發(fā)功能實現(xiàn)需求的人來說,軟件需求規(guī)范簡短并且難以理解。在這些情況下,有質(zhì)量保證的人盯著是有價值并不可替代的。
讓人工測試變簡單的東西和讓自動化的集成測試變簡單的東西一樣,所以這兩種測試策略之間也存在協(xié)同效應(yīng)。
為了讓質(zhì)量保證人員開心,你需要:
·管理測試數(shù)據(jù),主要是后端數(shù)據(jù)庫的內(nèi)容,這樣當你重復(fù)運行測試時,才能得到相同的結(jié)果。
·為了驗證缺陷是否修復(fù),需要盡快部署新代碼。
看上去顯而易見,但是實踐起來會有些難度。也許你的數(shù)據(jù)庫太大,無法復(fù)制到測試環(huán)境。也許它包含最終用戶的數(shù)據(jù),根據(jù)法律需要保護。在這些情況下,你需要在部署測試環(huán)境前辨識并清洗任何關(guān)于私人信息的數(shù)據(jù)。
每個企業(yè)都是不一樣的,所以在這個領(lǐng)域很難給出除了KISS原則(Keep it simple,stupid)之外的普適的有用建議。
自動化測試的優(yōu)缺點
當你和大家交流時,大多數(shù)人對自動化測試的前景充滿熱情。試想下它可能會帶給我們的好處:
·更高的軟件質(zhì)量。
·對于發(fā)布按照預(yù)期工作的軟件有更強的自信。
·減少費力且單調(diào)乏味的人工測試。
一切看上去都是那么美好!
但在實踐中,如果在不同企業(yè)中復(fù)雜的多層產(chǎn)品上花費時間,你會發(fā)現(xiàn)人們都在討論自動化測試,但是你也會注意到實踐中卻缺乏自動化測試。這是為什么呢?
如果你僅僅是編譯程序并在編譯完成時部署,結(jié)果可能會很糟糕。為了讓現(xiàn)實世界中的軟件能可靠工作,軟件測試是完全有必要的。人工測試對于實現(xiàn)持續(xù)交付來說太慢。所以,我們需要自動化測試來完成持續(xù)交付。
想了解更多IT資訊,請訪問中培偉業(yè)官網(wǎng):中培偉業(yè)