軟體自動化測試工具的歷史演進
軟體測試最早可以追溯到 1958 年的美國第一個載人航天計劃 - 水星計劃,當時在該計劃中首次誕生了軟體測試團隊。當然,在此之前也肯定是有軟體測試存在的,但遠沒有這次有了自己的江湖地位。但這也僅僅是軟體測試的萌芽,遠沒有到開宗立派的地步。因為你想想這時候軟體也只是萌芽階段,各種軟體的理論,標準都還沒有誕生,所以更別提軟體測試了,因此很長一段時間內,軟體測試時間內是沒有什麼發展的。
時間到了 1975 年,這一年,軟體行業的一個超級豪門誕生了 - 微軟。我不知道微軟是不是第一家純軟體開發的公司,但微軟確實使軟體開發得到了快速的發展。也是從那時候起,美國的軟體行業一騎絕塵。隨著軟體行業的蓬勃發展,軟體的規模越來越大,複雜度也越來越高,隨著而來的是軟體的質量被逐漸的關注起來,軟體測試的理論逐漸得到積累。到了 1979 年,梅爾斯出版了軟體測試第一版本著作《軟體測試的藝術》這本書,第一次明確的給出了軟體測試的定義 “The process of executing a program or system with the intent of finding errors”,至此軟體測試算是正式的開宗立派, 有了自己的江湖地位。個人認為現代測試的開端應該就由此開始。推薦大家都去讀一讀這本書,不一定能學到多少新東西,但是就憑它的江湖地位就足以讓大家去瞻仰一下了。
軟體測試的開宗立派,蓬勃的發展也給軟體自動化測試提供了豐富的土壤。江湖一直有著這麼一句名言 “天下武功,唯快不破",而如何快呢,程式比人快,自然而然的想到了讓程式測試程式。1985 年這一年,一款叫 AutoTester 的測試工具出現了,當然那時候還是 Dos 系統。早期的測試工具的功能和效用確實因為太過於久遠而不可考,但這種萌芽的開端卻給後來自動化測試以及測試工具的豐富打下了好的基礎。
自動化測試工具發展程序
在 1989 年,一家叫 Mercury Interactive 的公司在美國的加利福尼亞州成立,同年這家公司釋出一款工具-LoadRunner, 是的,就是那款你知道的工具(有不知道的嗎?)。都說一入江湖歲月催,長江後浪推前浪,但這確實一款始終沒有被拍死在沙灘上的前浪,至今仍是一款舉足輕重的效能測試解決方案。正如江湖中的屠龍刀,倚天不出,誰與爭鋒!所以,軟體測試自動化是從效能測試開始的,當然這也是必然,功能測試自動化並不像效能測試自動化那麼急迫,那麼不可替代。時至今日,效能測試這一武林秘技依然是軟體測試江湖的高階貨。
隨著軟體行業的發展,特別是 IEEE 標準的完善,CMM 模型,V 模型,Rational 模型的誕生,軟體測試也被提到了一個比較高的地位上。軟體測試的發展也催生了眾多流派的誕生,單元測試,功能測試,效能測試,自動化測試可謂百花齊放。
Mercury Interactive 公司-(該公司早期的 Winruner,loadrunner,TestDirector 真的可以成為測試三劍客,囊括了測試管理,功能測試,效能測試)。時隔 6 年,1995 年,Mercury Interactive 釋出了另一款重磅產品:winrunner。winrunner 是一款實現了錄製/回放的功能自動化測試工具,早期的測試人員肯定或多或少的都聽說過這個工具,而早期的自動化測試也大多以錄製/回放這種架構來進行。我記得在 07 年的時候,這款工具都還是比較流行的,當時所在的公司做的是 Delphi 的程式,使用 Winruner 進行測試還是比較給力的,但是當時 winrunner 的頹勢已現。Mercury Interactive 另一款工具 QuickTest Professional 已經佔據主流,即使是現在,大家對 QTP 也應該不會陌生,QTP 這款工具也提供了錄製/回放功能,最為令人興奮的是它首次引入了關鍵字驅動測試框架。它把每個測試步驟都換分為操作物件,行為以及操作的資料,並以表格的形式展現出來,而且對每個測試步驟都可以進行視覺化的編輯。這已經是相當高層次的自動化測試框架了。
2001 年 2 月,Martin Fowler,Jim Highsmith 等 17 位著名的軟體開發專家齊聚在美國猶他州雪鳥滑雪聖地,舉行了一次敏捷方法發起者和實踐者的聚會。在這次會議上面,他們正式提出了 Agile(敏捷開發) 這個概念,並共同簽署了《敏捷宣言》。隨著時間的推移,軟體開發模型已逐漸由瀑布模型為主導的轉向敏捷開發模型。華為在 2009 年時候也在大力推進敏捷開發模型,運營商 BG 部門在軟體開發的部分階段中開展敏捷流程。網際網路公司更是全流程開展了敏捷的開發模式。由此帶來了軟體行業發展的大暴發,與此同時軟體變更速度也在加快。一些傳統的自動化測試工具顯示力不從心,很難應付軟體開發的快速迭代和變更,導致一些公司開展自動化測試,徒勞無功。主要原因有:自動化用例建設速度慢,跟不上軟體新增內容;軟體變更頻繁導致用例維護成本巨大;學習成本高。所有這些都是自動化測試在中國軟體業難以建樹的主要原因。
相關文章
- 漫談前端自動化測試演進之路及測試工具分析前端
- 談軟體自動化測試工具的評測方法
- 軟體自動化測試工具的那些事兒
- 軟體測試:自動化測試
- 自動化測試的理想境界:AppCrawler自動遍歷工具APP
- 微軟自動化測試工具palywright微軟
- 有效進行自動化測試,這幾個軟體測試工具一定要收藏好!!!
- 2021年軟體測試工具大全(自動化、介面、效能、安全、測試管理)
- Angular Universal 的演進歷史Angular
- Eggplant—HMI自動化測試軟體
- 通用自動化測試軟體 — TAE
- Eggplant—HMI 自動化測試軟體
- 軟體測試理論(2)自動化測試
- 軟體測試自動化的最新趨勢
- 深圳軟體測試培訓學習:Android常用自動化測試工具【千鋒】Android
- 軟體自動化測試有什麼優勢?自動化測試框架有哪些?框架
- Python自動化測試怎麼學?軟體測試進階Python自動化,收藏這篇文章就夠了Python
- 軟體自動化測試的四個階段
- 一次 Linux 桌面自動化測試工具的試用經歷分享Linux
- 自動化測試工具QTPQT
- 軟體自動化測試的作用有哪些?為什麼要選擇專業軟體測試公司進行?
- 軟體測試、自動化測試極容易產生的誤區
- 自動化測試在國際軟體測試中的應用
- 軟體自動化測試有哪些測試流程?專業的軟體測評中心推薦
- 自動化測試是什麼?什麼軟體專案適合自動化測試?
- 軟體測試筆記——11.自動化測試和手動測試的選擇筆記
- 軟體測試為什麼需要自動化測試框架?權威軟體測試公司分享框架
- 軟體測試工作3年,我是如何從剛入門進階到自動化測試的?
- 在我有限的軟體測試經歷裡,一段專職的自動化測試經驗總結
- 軟體自動化測試與AI結合 - modernanalystAINaN
- 軟體測試(功能、介面、效能、自動化)詳解
- TAE V3.0 — 全新的通用自動化測試軟體
- 自動化運維的快速演進運維
- 深圳軟體測試學習:如何在Android手機上進行自動化測試【千鋒】Android
- iOS自動化測試驅動工具探索iOS
- 【自動化測試】移動端測試輔助工具 - adb
- 如何有效地進行自動化測試?靠譜軟體測評中心安利
- Windows桌面自動化測試工具:WinAppDriverWindowsAPP