-
1 # 檸檬班軟體測試
-
2 # 慧樂課堂
簡單列出一個知識清單
1)Java程式設計基礎
2)Python語言
3)Linux
4)SQL
5)Selenium
6)Jenkins
建議:
2、WebUI自動化測試,Selenium是一個讓你入門自動化測試的工具。新手不要去搞神馬錄製指令碼,指令碼是寫出來的不是錄製出來的。然後就是入門到放棄,放棄UI自動化,投入到介面自動化測試
3、學習各種自動化測試框架的設計和實現,UI自動化POM,資料驅動,關鍵字驅動
4、介面半自動化和自動化以及框架設計,利用一些工具進行半自動化測試,例如postman,然後利用程式碼和開源工具包進行介面單元測試,例如httpclient和requests,最後嘗試解決下公司內部的介面自動化框架設計和實現。
5、關於面試和工作機會
沒有什麼好討論的,技能越多越好。一個工作機會,有很多因素組成:專業技術能力,學歷,運氣,家庭因素,態度,溝通協調能力,責任心,還有一些隱性的自我價值展示。隱性的例如,快速學習能力,做事方式,思路和情商等。技術能力,當然是掌握越多越好,越紮實越厲害。只有地基大和深厚,你的就業選擇範圍就大,機會就多。技術覆蓋範圍越多,你把握機會的能力就越強。一般企業就看中你一兩個點,其他技術可以後面慢慢學。就看你的運氣和知識儲存能力了。
-
3 # MiHomes
軟體測試:
1.測試環境(網路環境,windows環境等)
2.資料庫管理
3.程式設計技巧(java程式設計設計,指令碼語言,設計工具,XML程式設計)
4.軟體測試技術(測試理論,方法,流程,文件寫作,測試工具,自動測試)
5.測試技術實踐
軟體開發:
1.對應語言的語法
2.資料庫管理
3.開發工具的使用
4.開發語言的學習
-
4 # 千鋒教育重慶
千鋒軟體測試全棧培訓老師注意到,近年來,由於IT行業的人才稀缺,越來越多人轉向了IT相關職業。由於IT軟體業的薪資較高,吸引了不少人選擇了IT軟體專業,IT軟體專業包括軟體開發、Java工程師、軟體測試工程師等。從薪資來說,軟體測試工程師相比軟體開發類的職業會偏低一點,但是它的難度性也會偏低,所以也有不少人選擇了軟體測試工程專業。那麼在轉向這個專業的同時,首先還是得了解它主要是做什麼的,需具備哪些職業素質。
軟體測試工程師主要是負責理解產品的功能要求,並對其進行測試,檢查軟體有沒有錯誤(Bug),決定軟體是否具有穩定性(Robustness),寫出相應的測試規範和測試案例。簡單的說,軟體測試工程師在一家軟體企業中擔當的是“質量管理”角色,及時糾錯及時更正,確保產品的正常運作。那麼要成為一個軟體測試工程師應具備哪些職業素質呢?
1.分析能力。軟體測試的核心其實應該就是設計測試用例了,而設計測試用例,就是依賴與分析能力了。這裡我們不說那些常用的設計方法,從一個稍高的層面上來講,就是怎麼將一個複雜的系統進行抽象,分析拆成幾個不同的維度,結合維度可能出現的情況進行有選擇的組合,以小成本獲取大收益。無法將一個複雜系統拆解成簡單的維度,是沒法做好用例設計的。
2.程式語言。語言其實就像說話一樣,只不過我們常說的英語日語之類是與人溝通,計算機語言就是與計算機進行溝通的。對於測試工程師來說,精通一門語言,熟悉其它幾門語言是有必要的。對於不同語言編寫的被測程式,是有不同特點的,如果對實現的語言不瞭解,無法進行白盒測試,沒法看程式碼diff(結合程式碼diff做測試)來提高效率。對於特點不瞭解,可能也會導致自己漏掉部分內容。
3.設計能力。不要認為設計能力就是開發工程師的事情,擁有好的設計能力,就可以在設計評審的時候多提意見,促進開發工程師使用好的設計,不僅對開發有好處,對測試也是很有好處的。這樣才能防患於未然,不僅自己的勞動力,也節省團隊的勞動力。
4.對業務的理解。對業務的理解越充分,就越能夠理解終端使用者的需求,促進產品設計使用好的方式,促進產品成功。難道你想做一大堆不成功的專案麼,那樣是多麼沒有成就感的一件事啊。
5.自動化相關的考慮。隨著專案越來越多,系統的測試專案也會積累的越來越多,每次有新功能了,難道要用手工來回歸一下原有的case麼。自動化測試是提高迴歸測試效率的唯一解決方案,以高效率促進高質量,才是一個良性迴圈的發展方式啊。
-
5 # JalenZh
這個問題,我正好有一點資格回答一下,因為之前曾在國內某網際網路大廠做過測試開發實習生。實習了差不多3個月的時間吧,所以測試開發的基本工作都是有一些瞭解的,我就我接觸到簡單的談一下。
程式語言
一般都是喜歡用指令碼Python。因為測試開發的主要工作,我覺得還是自動化測試比較多吧。但是這個自動化測試分為兩塊,第一就是客戶端,第二個就是服務端了。我實習的時候是在客戶端組,所以用到的一些東西都是按照客戶端來講。
2.框架
如果是做客戶端或者web自動化測試,用的比較多的就是appium自動化測試框架,我之前實習也是用的這個框架,非常好用。而且這個框架還有一個視覺化軟體,可以幫我們看一些元素的資訊,如resource-id等,讓自動化測試更簡單
3.思維
測試的話,一般為了保證我們的測試質量,我們都需要將各種情況都要考慮到,這就要要求我們qa的思維要比較嚴密,考慮問題要全面。
4.計算機相關的基礎知識
qa為什麼要懂計算機基礎知識呢?例如資料庫、計算機網路呢?可能有的人會疑惑。因為我們自動化測試的時候,經常需要設計一些測試用例,我就舉個簡單例子,比如現在需要你去測試某個後端API,你需要寫一些case,那麼如果你不懂資料庫,怎麼寫case?還有就是我們經常在定位bug的時候,需要使用chaless等工具抓包,然後分析body資料;這就要求我們懂網路、資料庫等基礎知識
5.開發知識
這塊,我覺得要求可能要低點。其實qa有一部分工作是做一下測試平臺,需要懂一些基礎的前端或者後端知識,我自己在實習的時候也做過類似的工作。但是這些技術,不需要你懂得非常深,瞭解基礎的就夠了。
-
6 # 松勤軟體學院
測試開發,首先需要對測試有個清晰的認識,最好有軟體測試相關經驗,這樣才可以更好的理解軟體業務,從而透過程式語言實現測試自動化,或者開發測試工具。具體來說需要軟體測試和程式設計兩個方面的技能。
-
7 # 測試領域專家
1、資料結構、網路、作業系統、資料庫基礎知識;
2、前端:最起碼jquery吧,MMVM的起碼懂一個React/Angular/VUE,至少會發個POST請求到後端吧;
3、資料庫:MySQL、Mongo不用多說吧,其他時序資料庫influxdb輔助;
4、作業系統:Linux必備;
5、中介軟體:Redis,Zookeeper、tomcat起碼得會吧;
6、程式語言Java系的:
(1) 打包Maven;
(2) 開發框架Spring/SpringBoot/SpringCloud;
(3)單元測試:JUnit/TestNG;
(4)mock:mockito,powermock等;
(5)ORM框架:MyBatis/Hibernate,或者起碼JPA吧;
(6)Java本身,起碼會搞個多執行緒吧;
7、持續整合:Jenkins
8、程式碼質量:Sonarqube
9、UI自動化:Appium/Webdriver;
10、圖表工具:echarts;
11、效能測試:起碼jmeter吧;
12、訊息佇列:ActiveMQ、Kafka等會一個吧;
-
8 # 千鋒頭號粉絲
現如今,隨著網際網路技術飛速的發展,當一個網站或者產品做出來,頭一個想到的就是測試,那麼軟體測試都學習什麼技術呢?其實啊,對於任何工程產品(注意是任何工程產品)都可以使用以下兩種方法之一進行測試。
黑盒測試:已知產品的功能設計規格,可以進行測試證明每個實現了的功能是否符合要求。
白盒測試:已知產品的內部工作過程,可以經由測試證明每種內部操作是否符合設計規格要求,所有內部成分是否以經過檢查。
軟體的黑盒測試意味著測試要在軟體的介面處進行。這種方法是把測試物件看做一個黑盒子,測試人員完全不考慮程式內部的邏輯結構和內部特性,只依據程式的需求規格說明書,檢查程式的功能是否符合它的功能說明。因此黑盒測試又叫功能測試或資料驅動測試。黑盒測試主要是為了發現以下幾類錯誤:
1、是否有不正確或遺漏的功能
2、在介面上,輸入是否能正確的接受?能否輸出正確的結果?
3、是否有資料結構錯誤或外部資訊(例如資料檔案)訪問錯誤?
4、效能上是否能夠滿足要求?
5、是否有初始化或終止性錯誤?
軟體的白盒測試是對軟體的過程性細節做細緻的檢查。這種方法是把測試物件看做一個開啟的盒子,它允許測試人員利用程式內部的邏輯結構及有關資訊,設計或選擇測試用例,對程式所有邏輯路徑進行測試。以在不同點檢查程式狀態,確定實際狀態是否與預期的狀態一致。因此白盒測試又稱為結構測試或邏輯驅動測試。白盒測試主要是想對程式模組進行如下檢查:
1、對程式模組的所有獨立的執行路徑至少測試一遍。
2、對所有的邏輯判定,取“真”與取“假”的兩種情況都能至少測一遍。
3、在迴圈的邊界和執行的界限內執行迴圈體。
4、測試內部資料結構的有效性,等等。
以上事實說明,這世上不存在完美,即測試必然具有不完全、不徹底性。由於任何程式只能進行少量(相對於窮舉的巨大數量而言)的有限的測試,在未發現錯誤時,不能說明程式中沒有錯誤。所以,千鋒老師時常感嘆,軟體測試,實在是學無止境啊!軟體測試都學習什麼技術?太多了!
-
9 # 菁英教育
什麼是軟體測試開發?
軟體測試開發也是軟體測試,只是相對來說測試的技術水平更高,在執行測試時效率更快,測試結果也更精準,能夠執行一些複雜專案的測試工作,把一些潛在的bug找出來,降低產品研發人員的修復成本。
需要學什麼?1、紮實的測試理論知識;
理論基礎可以說是測試人員的根基,是軟體測試人員必須要掌握的知識,例如軟體生命週期,測試用例編寫方法,軟體測試原則。軟體測試管理相關技術,軟體各個階段評審,軟體測試計劃編寫,軟體測試過程管理,軟體驗收,軟體測試整個過程一些文件規範等等。
2、基礎的程式語言;
程式語言並不是開發人員才要學的內容,中高階測試工程師也必須要會程式語言,只是不需要像開發人員那麼精通,像Java和Python都是比較熱門的程式語言。
3、瞭解和接觸框架;
這裡的框架指的是Selenium和一些自動化測試框架。包括:單元測試框架,Java中Junit或者testNG,Python中unittest。
4、Linux和資料庫;
不用說,自動化測試到一定深度,也需要用程式碼連線資料庫去進行測試,Linux和shell指令碼,基本上測試環境也會接觸到。如果要做自動化部署和運維,常見的Linux和shell指令碼是有必要學習的。
5、版本控制和持續整合;
目前大多數網際網路公司使用GIT作為公司版本管理工具,所以需要去學習、瞭解它,包括它的基本操作。
6、爬蟲;
這也是中高階測試工程師需要掌握的技能,學Python語言的話也可以用Python執行;
7、自動化指令碼開發;
這裡主要指的是selenium,用selenium編寫自動化測試用例,當然需要對selenium達到非常熟練的地步,來實現更深層次的專案測試。
霸哥這裡主要做的就是軟體測試開發技術培養,針對企業技術需求及時調整課程大綱,讓學員學到更前沿的技術,貼合企業用人需求,附上我們的課程大綱,是零基礎轉行、手工測試進階都適用的學習內容。
測開課程大綱:http://www.zmnxy.com/article-419-1.html
回覆列表
1.測試流程概念:
2.需求分析技能:
3.用例編寫技能:
4.程式碼編寫技能:
自動化測試開發的前提,Python Java任選其一學習即可
5.環境搭建工具:
把軟體裝到硬體環境中,Linux xshell xftp mysql navcat等
6.測試開發技能:
實現介面介面等自動化,Selenium Appium Jmeter Postman Fiddler等