看了zhuojun,一位技術工程師的《開發與研發上》《開發與研發下》這篇文章,受益匪淺。我早做過研發,也知道研發與開發的大概區別。早在一個創業型小公司做研發,而研發工程師實際是這句話的縮寫。“一個人一個團隊”“其實從頭到尾,從設計,規劃到代碼實現,一個工程,一個小產品,全是由一人完成(除了運營)”。這段生活經歷實際上對我的工作和生活有著莫大的幫助和提升。之前曾經憎恨的工作,如今反而有很多的感慨和感謝。

  如今做的工作雜亂無章,但無非都還是圍繞著IT,互聯網行業轉。對于《開發與研發》這篇文章讓我突然想對測試也說說廢話。如今的測試行業也是包羅萬象,從測試開發(實際上算是開發),到各種測試方法,包括各種測試軟件,使得測試行業越來越專業化,占據一個軟件或者公司里不可或缺的重要位置。這里所說的重要,實際上只是必要,畢竟很多公司或者項目現在仍不重視,測試成為了開發和研發的補充職位。這也導致了測試的地位低,往往不能起到很好的推動作用。

  我并贊成多么提升測試的地位,而是對于產品或者軟件的質量而言,測試必須負主要責任,然而他的責任也必須要能轉移到產品和軟件的生產者。否則測試為了測試,而不是為了產品質量。

  測試行業的發展,離不開測試者個人,測試理論,測試工具,(測試)開發。

  測試者在不斷的測試中,提出更優化的測試理論和方法,來指導測試工作。

  測試工具為測試者得特殊需要或者為了實現某種高效的方法所提供的。

  測試開發,則是帶有更直接目的進行開發,往往其目的比較直接和具體,面對的是一個產品或者軟件的測試進行開發,而不是一個統一的測試工具或測試框架。測試開發往往是對測試框架進行補充。

  測試行業包括這些:

  1、測試者

  人是一切的主體及主宰者。測試行業離不開測試者。雖然大家的分工不同,有人做手工功能測試,有人做自動化測試,有人做性能測試,有人做測試開發,有人白盒測試等。測試人員必須不斷提升自己的能力,技術能力,代碼能力,廣闊及發散的思維。很多時候,研發人員和開發者本身也會充當測試者的角色。所以測試是覆蓋整個產品或者軟件的生命周期。

  2、測試理論和方法

  測試人員不斷對測試進行總結,匯總了很多測試方法以及理論,來更好的指導測試工作。測試理論和各種方法的誕生,有利推進了測試行業的發展,使得測試行業也越來越專業及高效。測試理論等的誕生,預示著測試行業成為產業化。

  3、測試工具

  測試工具的出現是伴隨著測試理論和理論的提出。測試工具可以方便進行自動化測試,性能測試等各種專項測試,使得測試職業真正的專業化及自動化。大大減少了手工測試提高了效率,并利用工具使得測試的數據更準確。

  4、開發測試工具

  測試工具是由誰來開發的?自不必說,當然是開發工程師(研發工程師)。個人認為自動化及性能測試工具這種類型的應用軟件,難度要遠遠大于普通的應用產品。首先開發首先必須理解測試,深刻理解測試需求。其次,測試工具本身不是簡單的應用,會在技術上有所挑戰。例如自動化測試工具的錄制,播放等,有不同的技術,實現的技術難度也都相比普通應用要大許多。

  5、測試開發

  其實測試開發也算是測試者,只是由于測試開發目前已經大量獨立招聘該職位,看來有必要將其劃分出來。個人認為他還是屬于測試者的一個分類,只是將其與功能測試人員,割裂開來。他們可能主要進行,白盒測試(coding),測試腳本開發(可能包括使用測試工具的腳本),直接面向軟件產品的特定測試工具開發。“測試開發”開發的工具往往隨著功能的完善,完全可以成為一個非常好的測試工具。從公司內部并發展到公司級的產品對外發布和服務。

  作為一個測試人員的職業發展。你需要掌握哪些技能呢?甚至突然感覺比開發還要全面。其實測試者高手的能力并不比一個單純的開發者差。所以真正做好測試,也不會丟棄你的代碼能力,還會提升你的研究技巧和耐心。

  同時有人也會對測試行業產生悲觀,認為測試行業過多的會依賴于自動化測試,會需要更多的測試開發,而傳統的手工測試人員會被淘汰。個人認為這是不可能的。首先手工測試仍然會存在,雖然人員的總體需求量會下降。其次,傳統的測試人員會在測試中逐漸接觸到測試工具,隨著掌握測試工具&自動化測試工具的能力增強,即可以無縫的轉換到一個自動化測試者。