給測試開發工程師的5條建議

2022-09-19 12:18:11 字數 2490 閱讀 2543

近些年可以看出測試開發工程師是熱度比較高的測試職位,除了涵蓋了之前自動化測試工程師的職能外,測開同學的開發能力進一步提公升,可以做到開發一些測試平台和測試框架的工作,並在推廣自動化測試方面也有一定的kpi要求,能力越大責任越大,正好看到了國外有同行寫的給自動化測試工程師的幾條建議,覺得還是有一定道理的,所以在這裡簡單的分享一下,希望對大家所有裨益。

作為測試開發工程師,我們可能專注於學習測試工具和測試框架,提公升**能力,日復一日,迴圈往復。學習是沒問題的,不管你是測試開發還是功能測試同學,持續學習應該是整個職業生涯裡必不可少的一部分。話雖如此,不過對於測試同學來說,全方位的質量心態還是很有必要的。

那麼質量心態是什麼呢?作為測試開發同學,我們應該關注專案/產品質量的方方面面,而不是僅僅滿足於將驗收標準或者是手工用例轉化成自動化指令碼。

相反,我們應該站在質量控制的層面去從使用者的角度帶入思考,如果我們的指令碼不能為使用者帶來價值,那麼這些指令碼其實就沒有價值。

舉乙個例子,我們在提交乙個表單的時候,比如註冊使用者以後,我們的ui自動化用例是不是需要去查資料庫,看看新的使用者記錄已經被持久化到了使用者表裡?我的答案是:在開發時間有限的前提下不需要去連資料庫查詢,因為使用者是不會連資料庫直接看資料的,我們應該從使用者可以感知到的方面進行斷言。連資料庫查詢的事情可以交給其他型別的自動化用例,比如單元測試用例去實現。

相比於成為某種工具或者程式語言的專家,測試開發工程師可能更有必要成為一名通才,我們最核心的觀念應該是幫助團隊滿足使用者的需求和期望。

因此除了功能測試和自動化測試之外,我們是需要學習其他領域的知識,比如效能測試,可用性測試,可測試性,安全測試,移動端測試,視覺化測試和資料測試。

技術已經發展了很多年,我們幾乎每天都有許多領域和新技能需要學習。讓我們探索一些可以幫助你提公升自動化工程師職業生涯的領域:

探索性測試

老生常談的話題了,探索性測試可以叫做老司機測試,但探索性測試並不是隨心所以,而是需要精心計畫和設計一些測試用例。我們可以通過探索性測試來開闊用例設計的思路,從而改進我們的e2e(也就是ui)測試用例。《explore it!: reduce risk and increase confidence with exploratory testing》閱讀這本書可能是乙個不錯的開始,不過我好像並沒找到中文版本,有點可惜了。

資料測試

機器學習和人工智慧每天都在使用資料,但資料的有效性還是要驗證的。我的建議是開始學習資料模型的效能,這有助於我們弄清楚一些 ml**錯誤的具體場景。

視覺化測試

其實就是ui測試了,ui是產品和使用者打交道的最終途徑,很多情況下也是唯一途徑,生產環境中的視覺錯誤會危及我們的聲譽並影響我們的品牌,所以ui的測試是非常必要的,也是需要我們去花精力學習的。

可訪問性測試

正如您可能知道的那樣,許多國家/地區的法律法規要求讓每個人都可以訪問應用程式,並且建立一種必須適合所有人的軟體應用程式文化。比如產品對盲人使用者的可訪問性就是乙個很好的例子。我們可以從開始進行學習。

安全測試

就法律處罰和品牌聲譽而言,安全漏洞往往代價高昂。我們應該在ci 的pipeline中增加安全掃瞄的環境。我的建議是開始閱讀owasp和學習一些安全測試工具。

混沌測試

混沌測試/混沌工程測試是在影響客戶之前發現漏洞和進行中斷。簡而言之,我們希望系統是可以在受控的環境中進行錯誤恢復的。如果你想學習混沌測試,那麼《chaos engineering: system resiliency in practice》這本書將是乙個不錯的開始。

獲得他人的支援可以加速學習週期並顯著改善您的職業生涯。但是,首先得找乙個你信任的導師,他已經掌握了你想學習的技能,這些技能可以是技術技能或軟技能。

我的建議是你問問自己:「我公司或我的人脈網中誰會注意到我的變化並為我提供誠實的反饋?」 有時候找導師可能很困難,我們希望有最好的老師來指導我們。如果你在你的社交網路中找不到導師,你可以要求你的上級提供高質量的指導。

「如果你想快點走,就乙個人走。想走遠一點,就一起走」

這個很好理解,自動化的目的是什麼?大家可能有自己的答案,但答案一定不會是執行用例並使其通過。

其實我總結自動化的目標是幫助團隊從質量和效率的維度滿足使用者的預期。

質量很好理解,我們不希望使用者用到全是bug的產品;效率也不難想象,我們希望使用者可以盡快的用到產品。

正如你可能知道的那樣,教導他人可以提高你自己的學習能力。記得之前看到過乙個學習的方法就是先自己學一遍,然後把自己學到的東西講給別人去聽,如果別人能弄明白,那麼你自己就學會了。

另外積極的分享可以提高溝通技巧,增強信心,提高領導能力。

我的建議是強迫自己去做,把教學日期放在你的日曆上,或者同意主持幾個月的培訓課程。有了這些目標,你學習將更加專注和實用,我們在質量保障上可以不立flag,但是在分享學習上flag可以適當的立起來。

知識被認為是人類歷史上最寶貴的財富。如果你打算在自動化工程師的職業生涯中有所提高,持續學習之旅就不會出錯。

正如聖雄甘地所說:「活得像明天就要死一樣。活到老,學到老」。

SDET 測試開發工程師

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

測試開發工程師的發展

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

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

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