前言
在公司已經幹了6年的
測試
了,幹測試經理也
5年了。眼看就要離開奮戰了
6年的崗位,還真有點兒捨不得。但沒辦法,該離開的時候就要離開,光傷感是沒有用的。正好趁此機會把自己
6年來一直想寫但沒寫的東西寫出來。這篇檔案純粹是對自己工作的回顧。由於時間倉促基本上是想到什麼些什麼,有點兒亂,也請大家多多擔待了。只要還有些人能從中找到些兒同感,或從中得到一些幫助,一些經驗,我就知足了。
什麼是測試
首先我要談談什麼是測試。相信好多測試人員跟我一樣,來公司之前也沒有從事過任何測試工作。對於測試都是從零開始的。也有好多人跟我一樣,從各種書上或是培訓中得到過有關測試的各種定義。但不知道大家有沒有淨下心思考一下。什麼是測試。在公司公司測試工作的定義是什麼,測試的工作範圍是什麼。
測試的定義根據測試技術的發展,歷經了
3個主要的階段。第乙個階段,認為測試就是找產品中的
bug。第二個階段,除了找
bug以外,又增加測試是對軟體質量的度量這一
概念
。第三個階段,明確了測試是指為了度量和提高被測試軟體的質量,對測試件進行工程設計,使用和維護的併發生命週期。注意其中提高的測試件,其主要是與軟體這個詞進行對應。明確測試也是一種開發過程。他的工作成果就是測試件,好像平時我們所謂的測試案例、測試指令碼等等都可以稱為測試件。然後使用測試件去度量和提高被測試軟體的質量。
目前,在中國大部分軟體企業,尤其是中小型的軟體企業還停留在第一階段。我個人覺得公司稍微好一點兒,處於
一、二階段之間。因為我們平時做的最多的一件事,還是找
bug。至於測試案例和測試指令碼等等,只占用工作量的很小一部分。而且我看不到大家在平時的測試工作中是完全依據測試案例進行測試的。目前測試案例等工作更多的成為了一種形式上的產物。從有些部分所有產品的測試案例在乙個下午就能評審完就能看得出來。
說到這裡順便在談一句測試計畫。目前的測試計畫是作為產品計畫的一部分。先明確大概發版時間,然後是各個階段的里程碑,其中提交整合的里程碑是死的。開發需要的時間就是那麼多,剩下倒推的時間就是測試的時間。這樣定出的計畫是否能夠起到計畫的作用就不好說了。現在的計畫更多的是羅列聯調測試的各種內容,至於時間,不說也罷。所以從中也可以開出公司的測試也就停留在
一、二階段之間。
明確了公司測試的定義(個人理解),也就不難理解公司給測試人員的定位了。在測試人員中經常流傳的一種說法就是國外測試人員的地位多麼多麼的高,開發就是
coding
。咱們公司開發比測試多拿多少多少,測試人員地位是開發序列中最低的。大家也要看看人家公司測試人員的素質,測試在開發過程中的重要性。再看看自己所從事的工作,就是找軟體的
bug。當然我也個人認為有經驗極其豐富的測試人員對產品的貢獻比開發和需求大。明確了這些,心裡也就能少點兒不平衡感。
測試方法的思考
說完個人對測試含義的理解,再說說個人對測試方案的一些思考。
個人認為在公司
6年,測試方法沒有什麼提高。主要還是以黑盒測試為主。中間也曾經引入過各種各種工具,但測試人員真正用起來的也就是
robot
。而且robot
主要是進行回歸測試,再加上一些人並沒有真正認識到其價值,應用範圍也極其有限。對整體測試效率的提公升影響不大。所以目前的測試方案還主要是以需求為依據的黑盒測試。至於什麼極限值了,成對測試法等等,都是建立在黑盒測試的
基礎
上,而且從我一來公司就有相應的測試專案,只不過沒有明確概念而已。
另乙個說個人覺得
6年來公司測試方法沒有什麼提高的原因是,
6年前測試是以人為主,靠得是測試人員的經驗,對產品的熟悉程度,對業務的理解程度。
6年後測試還是以人為主,人就是測試的主體,產品質量的保證。還沒有過渡到測試案例就是測試的主體,測試案例的完整性是產品質量的保證。只要測試還是以人為本,我覺得測試的效率就不會有太大提高,產品質量的信心**也是對相關測試人員的信任。
我個人覺得以黑盒測試為主要的測試方法沒錯,而且也比較符合目前公司的測試現狀。但一定要注意各種經驗的總結、積累,更重要的是共享。雖然目前測試案例在測試工作過程中的地位不重要,但其畢竟是編寫者的經驗積累。彙總起來也是一筆可觀的財富。可現在如果有人問我
850的測試方案在那裡,其中還有多大比例能夠用在現在的產品中,在現在的測試工作中有多少以前的案例能夠復用。其他產品中的測試案例中有多少是關於介面功能,有多少我可以借鑑。我不知道,這也是自己工作不到位的地方。所以我要說的作為黑盒測試為主要的測試方法,一定要注意測試經驗的總結和共享。
而且我認為乙個人如果黑盒測試能做到位,做到最後培養的是一種測試的感覺。測到最後,產品你一看就能知道那裡可能有問題,那裡應該沒什麼問題。這樣有重點地投入測試力量可以收到事半功倍的效果。可這是需要大量測試經驗的積累的,不是我告訴你,你就知道的能力。在此前提上加強測試人員之間的橫向溝通,形成經驗貢獻。可以較快的培養測試人員的測試感覺。
最為測試經驗積累的另乙個重要方法就是加強對測試案例的要求和管理。每版測試案例不僅要包括新增功能,還需要包括上一版本中繼承的案例,修改或刪除上版案例中變更的內容。從而形成乙份完整的關於產品所有功能點、介面、公升級、年結等等各方面的測試案例。真正做到測試案例是測試的主體,從而提高測試效率,提高產品質量。
測試工具的概念和作用
測試工具,什麼叫測試工具。我認為任何能提高你測試效率的工具都可以稱之為測試工具。不僅僅指
robot
或是loadrunner
這類專門的測試工具,也不僅僅指使用各種程式設計工具編寫的測試工具。像總賬工具、
eai等,即使只是幫我們匯入一些常用檔案,也可以節約我們的測試時間也可以稱之為測試工具。
我個人現在公司測試在測試工具開發上還很不足。在公司裡一提起測試工具,大家第乙個想到的可能就是
robot
。即使是
robot
應用的也不夠深入。大家經常認為
robot
主要錄製
gui的指令碼,跟產品介面聯絡緊密。每次回放成功率不高,各個版本間指令碼復用率也較低。而且每次總是以各種理由將指令碼錄製放到最後,經常就不了了之了。最後階段的測試任務實在太緊。我想說的是
robot
的應用雖然有各種各樣的侷限性,但其畢竟提高了測試效率。比如說安裝盤驗證,使用
robot
驗證,每天都可以節約一半以上的驗證時間,這就是效率。認識了它的好處,才能想盡辦法解決或避免在
robot
使用中的各種問題。以前同事有一套
robot
指令碼規範就很好,使用後不僅提高了回放成功率,而且回放中斷後,繼續回放也變得很容易。所以說使用
robot
後,想100%
回放成功不可能,想不再進行指令碼的除錯也不可能。認識這兩個問題後,就需要加強
robot
使用經驗的總結和共享,有針對性地加強
robot
使用問題的研究,每版測試開始時針對上版
robot
指令碼的復用問題進行研究。這樣才能用好它,真得使之成為乙個工具,而不是一項任務。
一種工具也不是萬能,有許多針對產品特性的測試工具。只能自己開發,大家應該積極提需求。凡是認為有可能提高測試效率的工具需求都可以提。能從網上找到現成的工具解決需求更好。不能,如果是普遍性的需求,可以專門進行開發。因為咱們產品的特性,每版間測試工具的復用度很大。從長遠看就是節約開發成本,縮短開發周期。
在現階段加大測試工具的適用範圍和力度,用好各種測試工具,可能是提高整體測試效率最快最好的方法。但一定要加大推廣的力度。否則有了好的工具,沒人用或用不起來也是沒用。
如何看待各種規則和執行
可能大家覺得平時開發過程中有好多規則、制度。這些除了一些自己公司內根據各種情況制定的外,大部分都是跟
cmm體系相關的一些規則。可以說是已經被許多軟體公司驗證過,可以提高開發和測試效率的規則。但好多人覺得起沒有什麼用,就是在浪費時間。總是以一種完成任務或是應付差事的心情去做。我覺得大家之所以覺得其沒用,恰恰就是由於你去做這件事的動機不對。總以應付差事的心情去做,你就不可能真正理解這麼做的目的,這樣做能給你帶來什麼好處,你從中會得到什麼收益。所以我個人認為,既然有規則,不管是公司自創的或是借鑑其他標準,都是為了解決開發過程中的問題,為了提高開發的效率,保證產品質量。也許這些規則中有這樣那樣的不合理,但只有你認真地去做了,才能發現其中的不妥之處,才能改進,才能更有助於你的工作。
轉 6年測試工作的思考之二
6年測試工作的思考之二 轉 作為一名測試人員應該具有的素質 測試人員應該具有什麼樣的素質,相信好多人都有自己的理解,不同書上的觀點也不盡相同。我就說說我在公司工作了六年,覺得乙個合格的測試人員應該具有什麼樣的素質。業務和測試方面的能力就不說了。測試人員應該具有的素質包括 一 踏實細心和積極主動 我覺...
10年軟體測試工作總結
讀完文章感覺醍醐灌頂,目前我做測試已經進入了乙個瓶頸期,之前比較懶,疏於學習,現在必須要突破自己,更上一層樓,2017,加油 原文如下 時光荏苒,從畢業到現在已經10年,10年來一直從事著軟體測試的工作。從乙個什麼都不會,到測試技術人員再到測試管理,期間有迷茫,有痛苦,有彎路,有捷徑。今天對自己過去...
10年軟體測試工作總結
時光荏苒,從畢業到現在已經10年,10年來一直從事著 軟體測試的 工作。從乙個什麼都不會,到 測試技術人員再到測試管理,期間有迷茫,有痛苦,有彎路,有捷徑。今天對自己過去的10年測試經歷做乙個總結,一是給自己重新出發增加動力,二是給剛入道的 迷茫中的測試朋友一點點建議,希望你們少走彎路。首先,談談測...