怎麼學自動化測試

首先,你需要有心理準備,不是說會自動化,就不用幹手工測試了。 自動化測試沒有辦法完全取代手工測試,有些測試場景,自動化的成本要明顯高於手工。

其次,咱們把平時的測試工作簡單分一下類,手工測試最常見的就是基於界面的測試,通常可以串起來整套流程。 但是對於分層測試來說,接口測試是一種回報率更高的方式,自動化測試在接口測試的應用是最普遍的。 當然,還有性能,安全,這些一般都是自動化來實現。

然後,再來說一下技能。技能一般分爲工具和代碼兩種,他們都可以達到自動化測試的效果。 如果代碼能力較差,一般會先會一些工具過渡,然後再把編程能力提上來。 而且一定需要注意的是,業務測試的能力是絕對不能丟的。

工具常用的有 jmeter, postman 這樣的工具,現在國內也出現了像 metersphere, apifox 等等自動化工具,都可以瞭解一下,其中,我個人覺得 jmeter 是要重點掌握的,它的能力足夠強,既可以做全流程的接口測試,也可以做性能測試。

然後是界面端的工具,一般就是集成錄製和回放功能,然後生成代碼片段,以及一些遍歷工具。 像 selenium ide, cypress, katalon studio 等等。 cypress 會比較流行一點,但是需要會一點 javascript 基礎。 這一類工具的實用性不是很強,要麼就是遷移性較差,要麼就是應用不廣泛,還有的是學習成本高。

接下來,說一下編程。當會一些工具之後,一般都會掌握一兩門編程語言。一方面,會編程職業前景會好一點,另一方面,很多工具都會支持通過編程來自定義腳本。

編程語言的選擇,測試領域一般是 python 和 java,如果沒有接觸過,兩個選一個就行了。 如果前端測得多,要求高,最好學一下 javascript。 對於測試來說,剛開始上手的時候,我覺得沒有必要太精通,花過多心思在各種編程語言的進階用法上,能寫出測試用例就差不多了,在工作中再去提升。

掌握好編程語言後,會接觸各種各樣的框架和庫,他們就是去幹具體的測試工作的。以 Python 爲例,做用例編寫,用例收集,用例運行,測試報告生成會用到單元測試框架,比如 unittest 和 pytest。

接口自動化一般會用到 requests / aiohttp / httpx 這樣的庫, 界面端會用到像 selenium / playwright / appium /airtest 這樣的框架, 性能會用到 jmeter/ locust 這樣的東西。

以他們爲核心,要實現的大多數測試場景和技術,都很少從零開始寫,會用到具體的庫,比如怎麼操作 csv 文件,怎麼操作 yaml, 怎麼實現參數化,怎麼控制數據庫,怎麼處理數據依賴,怎麼做數據生成,怎麼清理垃圾數據, 怎麼實現併發,怎麼做分佈式處理,怎麼做集成,怎麼部署自動化執行環境,就不一一展開說了。

有緣再聊吧。


感謝你的耐心閱讀,我是九柄,全網同名,我還有一個公衆號【 九柄 】,裏面有軟件測試相關的資料,歡迎來看看。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章