職場感悟 對測試開發工程師的深度理解

2021-10-04 08:19:34 字數 1797 閱讀 6360

測試開發工程在公司一般有兩種,一種是單純為測試團隊開發測試工具或者系統(由於這部分和單純開發職位本質上區別不大,討論基於另一種);另一種就是在測試過程中發揮主觀能動,利用自動化把重複勞動降至最低,比如開發適用於特定場景的測試工具(當然這種工具具有普遍性也能推廣到整個組或者公司)、測試指令碼和測試用例。 測試開發工程師應該具備兩方面的知識:測試知識和開發知識。之所以把測試排在前面,因為這裡的開發建立在測試實踐基礎之上。其中測試知識又分為兩部分:一是理論知識,軟體行業發展至今也就幾十年,測試方面的積澱就更少了,所以要掌握這部分對於一般人來說不是難事;另外一方面是經驗知識,主要在專案測試過程中積累,很多系統的測試點、風險點都需要有豐富的經驗來評估,這也是資深的測試工程師價值所在。開發知識當然和開發工程師差不多了,不再多說。在軟素質方面,測試開發工程師應該具有更好的組織溝通協作能力。現在許多公司都在推行全流程保證,qa為了發揮更大的影響力以及保證專案的質量,需要從需求到設計,測試到上線全方面跟蹤參與,這就涉及到了許多跨部門跨小組的溝通,即便在小組內溝通也極其頻繁,工程師需要很好的表達能力。同時,由於測試在軟體生命週期中處於靠後的位置,所以在將許多任務作推行到上游的環節中存在較多阻力,這也要求工程師有較好的統籌和協作能力,最終達到目的。

不可否認,現在許多測試理論,無論白盒測試還是黑盒測試,無論單元測試、整合測試還是系統測試,看似屬於測試人員研究的專利,實際上大部分的方**都是開發人員提出來的。再一次證明,不參與軟體主體的研發工作是不可能深入理解測試的,所以開發人員需要具備的開發能力和技巧測試人員也是需要具備的。當然由於專案的安排和時間等各方面的原因,測試人員能難有較多的開發機會,但這不妨礙你不斷地學習。我們大組內就有乙個多年深入研究的python的qa,一直以此為興趣,許多開發小組用到python開發系統的時候都會叫他過去培訓,他不僅是質量部的資深測試工程師,還親自開發了多款實用的測試自動化工具。另外,測試可以涵蓋的方面很多,但人的精力畢竟有限,測試開發工程師也必須擁有自己的核心競爭力,選定乙個方向是個不錯的做法,致力成為某方面的專家,比如單元測試(不要認為是開發人員做的,很多開發人員沒有單測意識和技巧)、效能測試、安全測試。組裡面也有乙個對效能測試研究了6年的人,從職業開始發展一直比較順利,並且發展勢頭不錯。最後是測試開發工程師需要培養自己的大局觀,這個是在職業過程中有意培養的,公司現階段的任務是什麼?側重點是什麼?在大公司需要順勢而為,qa的本職工作是保證質量,需要借助與流程、工具和其他外部資源,所以在工作的時候盡量與大方向契合。比如公司去年是qa內部水平提高的一年,需要qa具備單元測試、code review方面的能力,今年是保證質量的前提下,提高軟體發布週期,主推持續整合。

2v(validation和verification)是qa的基本職責,即保證兩點:validation,軟體按照既定的需求開發,沒有偏離產品方向;verification,軟體在滿足需求的基礎上保證其正確性,從功能、效能、安全等各個方面驗證。傳統意義上,第二點是大部分qa的意識,即找bug,認為乙個軟體找到的bug越多自己的價值越大,實際上qa的最高境界是軟體在測試的時候找不到bug,因為在軟體的啟動階段你就開始了質量保證工作,從需求、設計、編碼這些前期階段就杜絕了bug產生的可能。當然,以上說的有些理想,但本質是什麼?軟體背後是人,是pm制定的需求,是rd進行開發的, 那測試背後實際上測的是人而不是軟體。人總是可能存在思維漏洞的,人總是可能犯錯誤的,所以永遠會有bug,但有些人心細,有些人負責,自己開發完後會自己進行單測、功能測試,以致後續能發現他的bug已經很少了。明白了這一層就不要單純從技術角度來思考測試。

最後想說的是,無論在大公司還是小公司,大家都有壓力,都要發展,心態就很重要了,以創業者而不是打工者的心態來工作看待很多問題就截然不同了。

還有一點,就是你最好還是產品經理,以運營的方式去經營你的測試開發,通過運營資料來衡量和評價測試開發的質量,不斷持續改進,最終達到做好測試的目標。

SDET 測試開發工程師

不一樣的sdet 首先,我要強調的是這篇文章討論的是微軟的 software development engineer in test,中文翻譯為測試開發工程師,簡稱sdet。不同於以手工或者指令碼幫助測試的軟體測試工程師 ste,software test engineer sdet是用程式設計方...

測試開發工程師的發展

1.技術含量 面試過許多的應屆畢業生,問及為什麼選擇測試開發這個職位時,經常聽到以下的回答 我覺得自己開發能力比較弱,但我比較細心,覺得測試職位比較適合。我在實驗室和實習公司呆過,做過功能測試和效能測試,我比較喜歡測試.無論人們內心真實的想法是什麼,但潛意識裡面測試的技術含量沒有開發高。在校園招聘的...

什麼是測試開發工程師 SET ?

經常有人問到 什麼是 軟體測試開發工程師 software engineers in test,縮寫為set 借用google的規範來說其實就是 在測試中的軟體工程師 其工作性質上首先是測試,然後才是開發。我個人的觀點是 通常情況下是不行的。因為一名優秀的開發工程師所具備的能力,不僅僅是熟悉程式語言...