轉(zhuǎn)帖|其它|編輯:鄭恭琳|2020-05-27 11:44:54.787|閱讀 347 次
概述:在與Coveros測試自動化總監(jiān)Max Saperstone的對話的第三部分中,我們討論了他在測試自動化中遇到的成功和失敗。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
在與Coveros測試自動化總監(jiān)Max Saperstone的對話的第三部分(閱讀第一部分和第二部分)中,我們討論了他在測試自動化中遇到的成功和失敗。
Max發(fā)現(xiàn)了與我們在市場上看到的類似的經(jīng)歷:糟糕的計劃和各個層次的買斷都不是成功的好環(huán)境。但是,當(dāng)自動化的投資回報率明確時,成功的可能性就更大。讓我們來看看Max在這方面的經(jīng)驗。
Mark Lambert:讓我們用最后兩個問題來結(jié)束這個討論。第一個問題是,給我一個例子,您進(jìn)入一個組織來幫助他們進(jìn)行自動化測試,這是成功的。它運行良好的原因是什么?
Max Saperstone:有趣的問題。我想到的一個例子是,我去了一家進(jìn)行大量手動測試的組織。他們的測試實際上是在輸入數(shù)據(jù)并進(jìn)行表單驗證。他們的挑戰(zhàn)是由于測試應(yīng)用程序所需的復(fù)雜性和不同輸入組合而花了數(shù)周的時間僅測試系統(tǒng)。他們甚至知道他們沒有涵蓋所有內(nèi)容。
我們與他們坐下,討論了需求以及他們正在尋找的一切。他們說:“您知道嗎?老實說,我們不知道?!彼麄冋谧龅牟糠止ぷ魇鞘謩虞斎豚]政編碼,然后該應(yīng)用程序報告了不同的用戶。對于返回的每個用戶,他們都需要執(zhí)行另一個查詢,以確保信息正確。
我們創(chuàng)建并運行了一些腳本,結(jié)果,我認(rèn)為是一百萬種不同組合中的四分之三。一個晚上花了大約八個小時才能運行所有這些測試。他們查看了數(shù)據(jù),然后我們問:“好吧。那我們該怎么辦?”他們說:“我們不知道?!?
我們知道所有這些東西都在他們的數(shù)據(jù)庫中,但是我們沒有辦法對其進(jìn)行測試。因此,實際上有人做下了這些數(shù)據(jù),大概花了一個月的時間。他們最終回來說:“我們仔細(xì)研究了所有這些數(shù)據(jù),并不都是正確的。”他們發(fā)現(xiàn)了30或40個不同的差異,但實際上他們從來沒有真正發(fā)現(xiàn)過這些差異——他們實際上是在進(jìn)行隨機(jī)采樣。
我們能夠做的就是獲取該數(shù)據(jù)集,而不是編寫這些輸出的腳本,我們將其轉(zhuǎn)換為測試。仍然需要花費整夜的時間來運行,但是他們沒有花數(shù)周的時間來分析覆蓋率較差的結(jié)果。這些新測試驗證了所有輸出實際上都是正確的,并且組織能夠以更少的工作來測試結(jié)果,從而繼續(xù)向數(shù)據(jù)庫中添加新客戶。
我們不僅發(fā)現(xiàn)了錯誤,而且這種新的自動化功能使客戶端實際上可以跟蹤所有內(nèi)容。對我來說,那是巨大的成功。將自動化和智能手動工作相結(jié)合,可以節(jié)省大量時間和精力。另外,另一項成功是發(fā)現(xiàn)了如果最終出現(xiàn)在最終產(chǎn)品中,則絕對會影響公司盈利的錯誤。
Mark Lambert:因此,他們通過利用整個數(shù)據(jù)集獲得了完整的測試覆蓋率?而不是隨機(jī)抽樣以嘗試發(fā)現(xiàn)缺陷。
Max Saperstone:差不多。同樣,它完全覆蓋了應(yīng)用程序的一個區(qū)域。但是實際看到的正是自動化的使用。但是,這是一項昂貴的工作,如果客戶真的希望我們拋棄所有存在的問題,我們會的。在這種情況下,這對我們的客戶而言是一個巨大的提升,最終,對他們而言這是非常值得的,這很好。
Mark Lambert:好的,最后一個問題。這個項目完全出錯的例子呢?是什么原因?qū)е聦嵤┏鲥e?從中學(xué)到了什么?
Max Saperstone:我當(dāng)時與現(xiàn)在的公司不在同一個公司,一位客戶邀請我們說:“我們真的需要您使我們的測試自動化。我們有所有這些手動測試員,他們花費數(shù)周的時間進(jìn)行回歸測試。真正需要的是使這些測試自動化并加快測試時間?!?
這是前一陣子,我天真地說:“可以?!蔽议_始研究問題,編寫一些測試,并與手動測試人員交談以弄清他們在大部分時間上花費了多少。一兩個月后,我進(jìn)行了一套不錯的測試,并將其交給測試人員。
我說:“您來了。您不再需要運行手動測試。這些自動化測試將為您調(diào)查應(yīng)用程序的某些領(lǐng)域?!?
發(fā)生的事情是測試人員沒有運行這些自動化測試,或者他們將運行它們,但是隨后他們將手動重新運行它們。據(jù)我了解,他們之所以沒有運行它們,部分原因是測試人員不在乎運行它們。他們不一定信任它們。他們沒有看到能夠從自動化獲得的價值。同樣,測試的構(gòu)建方式也不是測試人員用來運行的完整的端到端測試。測試確實完成了他們所需的應(yīng)用程序部分,但是測試人員仍然必須執(zhí)行許多其他步驟才能獲得所需的覆蓋范圍。
最后,他們說:“好吧,如果我必須運行這些手動測試,我們并沒有真正節(jié)省那么多時間?!笨蛻糁皇强床坏奖惶砑拥剿麄兊闹?。我認(rèn)為該項目的主要問題是溝通。我們弄清了測試人員花費了很多時間,但是我們沒有與他們談?wù)撍麄內(nèi)绾螠y試軟件以及他們希望能夠?qū)崿F(xiàn)什么自動化。我們需要問他們:“如果您能做任何事情,那會是什么?”
我們過多地關(guān)注最佳實踐。問題在于這些實踐和我們自動化的測試不適合他們的整體質(zhì)量工作流程,而這正是他們真正需要的,以便減少一些質(zhì)量檢查時間。
我認(rèn)為我們應(yīng)該討論更多的高級策略,并更好地了解可以立即減少手工測試次數(shù)的方法。我們應(yīng)該問我們該怎么做才能使測試人員真正為嘗試使用感到興奮?甚至,他們認(rèn)為實現(xiàn)自動化有什么意義,他們熟悉什么技術(shù)?
事實證明,有些測試人員甚至不想在計算機(jī)上單擊“執(zhí)行”以運行自動化測試。但是,其他人則對自動化很滿意,每天早晨都會通過電子郵件發(fā)送報告給他們,說:“運行了,就完成了?!辈恍业氖牵@些討論還沒有開始。
因此,我們返回并重申了該項目。但是,毫無疑問,可以通過對這種高級測試策略進(jìn)行更多討論來節(jié)省很多前期工作。這可以回溯到我們正在談?wù)摰牡谝粋€評論。
Mark Lambert:因此,沒有計劃,沒有團(tuán)隊的支持,就沒有信任或感知的價值。您盲目地進(jìn)入測試自動化并沒有真正的幫助。
Max Saperstone:完全正確。它是為了測試自動化而進(jìn)行測試自動化,而不是真正確定什么是真正的價值,以及我們?nèi)绾螐闹蝎@得最大的收益。
Mark Lambert:太好了。好,非常感謝您,Max。真的很感激您的分享。我認(rèn)為這是一個很棒的討論。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn