單元測試,精益創業,以及兩者之間的關系

發表于:2017-03-31來源:掘金翻譯計劃作者:gy134340點擊數: 標簽:創業精益
為什么軟件需要測試?我曾經以為是為了產出高質量的代碼:你總是需要測試因為你總是需要寫出高質量的代碼。但是這個觀點有幾點問題。

為什么軟件需要測試?

我曾經以為是為了產出高質量的代碼:你總是需要測試因為你總是需要寫出高質量的代碼。
但是這個觀點有幾點問題。

有時候質量不是主要問題。
在“精益創業” 這本書中,作者 Rric Ries 說過有時候發布一個軟件最終發現沒人真的想用它。
這也是他創作的動機之一: 為創業初期建立一套更好的方法論,在真正投入時間去構建一個高質量的產品時,就能夠發現這款產品是否能夠成功的方法論。
如果沒人用你的軟件的話那么確保高質量純屬浪費時間。

即使高質量很有必要,但高質量與測試之間的關系卻很模糊的。
一個 QA 的團隊跟自動化單元測試又什么不同?
他們的確不一樣,但他們又分別給出什么樣的質量?
什么時候需要特別的測試?

另外,測試是有成本的:你怎樣辨別成本的花費是否超出回報?
比如說,有一家做稅務申報軟件的公司(我稍微改了一下細節)。
他們使用 Selenium 來對他們網站的 UI 來測試... 但是他們的應用依然很爛,而且每次改變 UI 測試都會崩潰。
這個測試并沒有改變產品的質量,相反浪費了程序員的時間來維護測試。
他們做錯了什么?

說我們都需要寫出高質量的軟件并不能幫助解決這些問題。
那我們回頭來更加深入的討論一下。

測試的意義是什么?

康熙字典 :) )里告訴我們測試是為了 “舉證,通過一定原則或標準或實驗來,證明真理,真實性。“
軟件質量就在那里,是的,但事實卻又不僅如此。

準確的說,這只是英語定義,可以肯定,有很多不說英語的開發者。
我不想被字典來束縛我們的行為。
人類語言是數世紀以來對世界的觀察和理解,也是我們可以拿來借鑒的寶庫。

那我們來以這個為出發點來看看能學到點什么。

測試的第一個方面

原文轉自:https://juejin.im/post/58d90a3b44d90400694505c4

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97