測試工程師,選擇python還是java?


問:“你平時工作中,用java多還是用python多”?

答:“都還可以,根據具體的場景選擇不同的語言”。

問:“比如說呢”?

答:“開發自己的測試平台,肯定會選擇java;在centos服務器跑一些腳本,會選擇python或shell;某些壓測場景,追求高並發,可能會選擇go語言”。

問:“我java和python都學了一些基礎知識,不知道該選擇哪種語言”。

答:“可以先選擇一門你相對擅長的語言,先開始用起來”。

這是前兩天,一位身邊的小伙伴和我的對話。

相信有這樣疑問的人不在少數,就是自己到底該選擇python?還是java?作為自己主要的語言,這樣就能專心的將一門語言學好,因為人的精力畢竟是有限的。我先拋出我的觀點和建議:“其實語言是次要的,畢竟都是為測試工作服務,不要讓選擇阻礙了我們前進的腳步。你要做的僅僅是行動起來!就選擇python(其實語言無所謂,我的建議如果沒基礎,就從python開始),先用起來再說。 不要慫,就是干!

拿我自己的經歷來說,我剛開始工作的頭兩年主要用java做研發,后來轉成測試工程師后,發現有些場景,更適合用python實現,於是開始嘗試寫python。我從來沒有系統的去學習python的基礎知識,就是用到什么不會了就查查資料,慢慢的就大致知道了python咋玩的。所以,編程語言是用起來的,不是學起來的!(這句話略有些偏激,是我個人的想法)。

下面的表格,是我整理的java和python的對比:

  java python 備注
語言類型 編譯型+解釋型語言 【編譯型】+ 解釋型語言

 java和python都是高級語言,而計算機是不能識別

高級語言的,所以當他們運行時,會有一個工具將高級語言轉成機器能懂的語言,

編譯型語言:如果在運行前就將程序轉成機器語言,運行時刻直接運行,比如C語言。

解釋型語言:在程序運行時,再去解析程序的含義,然后運行。

是否開源 是  是   
難易程度 相對難度大一些 相對難度小一些(僅僅是上手快) python語言簡潔,上手會更快一些
語言復雜度 相對知識體系更復雜,但介紹資料也更多 語言比較簡潔,不過官方介紹多為英文  
運行速度

java的jre比較強大,另外還引入了JIT編譯器技術,因此執行速度更快

語言上的特點

1. 每行代碼后要加; 用於表示代碼語句結束。

2. 強類型的語言,使用前需要聲明變量類型。

 

1. python語句末尾不需要分號,但是要求強制縮進。

2. 弱類型語言,使用變量時不需要聲明變量

 
單測框架

testNg、Junit5

pytest、unittest

 
web開發能力

框架很多,常用的springboot+mybatis

常用的有Django、Bottle

 
接口自動化

一般基於單測框架+網絡請求框架,比如:testng+RestAssured

跟java設計思路類似,比如:requests網絡庫+pytest

 
ui自動化

可用Appium

同樣可用Appium

 

我的建議


 

  • 如果你沒有編程基礎,那么不妨就從python着手,開始嘗試寫一些python腳本,可以有針對性的解決一些工作中實際的問題。
  • python只是上手比java快一些,但對我們來說,解決問題的實現思路是關鍵,所以java和python難度其實一樣。
  • 總之不要將時間浪費在“選擇java或python”,而應該用python(建議)開始行動起來。
  • 行動永遠比語言更有效果。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM