測試開發工作者的日記:2020.6.10-11 [聊聊測試平臺辛酸路]
這倆天還是在忙安卓自動化平臺和交接,效能穩定,用例也磨合的差不多了,還增加了預釋出單獨裝置,還有很多方便快捷的小功能。
方方面面吧,都不錯,測開要想混的好,良心匠心不能少~(一條能服務的人傳人現象)。
而其餘時間,都在維護測試工具平臺,這種資料構造平臺後期維護量一般都非常非常巨大。邏輯複雜,穩定性差,風險高,且認同度低。比如說構造測試用訂單,同樣的東西,發現了bug,開發一聽,你這是指令碼造的,都第一時間覺得是指令碼問題而抵賴掉。
而且測試人員要開發這種平臺的前期是異常艱苦的地獄難度,文件基本借鑑不到,介面文件更是可笑。
所有需求,都是自己去想辦法解決,邏輯都是抓包一點點一點摸索,你能指望的人就是領導,給你捅婁子的時候背後撐腰。
拿這個訂單自動生成功能來說,它的計算方式是寫在app客戶端,然後把最終結果加密後和後臺伺服器去對比驗證。也就是說,我想做一個測試用訂單出來(相當於做一個微型測試生成訂單專用客戶端),最終的價格,是沒辦法通過介面/抓包 來獲取到的。只能通過自己一點一點猜,一點一點驗證,一次一次的試出來客戶端的計算方式,什麼單價,會員,折扣,發票,入住天數,單價,優惠卷,押金,增費,節假日特殊費用等等一大堆的計算。
有的同學說,那你問開發啊,但是我想說:實際去問就明白了。你根本找不到對的人,即便找到了人家也沒時間給你講,拖你幾天常有的事,有時間也不一定配合你。講了也可能很粗糙你完全聽不懂,可能時間長他自己都忘了。當時的開發者產品 離職了等等等等 一系列因素。讓測試平臺的開發難度指數形式上升,何況一般手底下技術高的都是靦腆內向的,比如我很難去拉下面子去求爺爺告奶奶的問。何況遇到嚴謹的同事,還會懷疑你的動機,不給你洩漏這些機密演算法和邏輯,當時我不知道我低聲下氣的叫了多少聲:大佬有空麼,問個問題。
而這只是 成百的功能中的一個,毫不誇張的說,大部分測開面對這種情況基本就會找藉口推脫掉了,不可能去做這種費力還要裝孫子的事。而這後續的維護成本,才是真的要命。當你安穩的度過了幾個月之後,這塊複雜的邏輯早都忘的一乾二淨,唯一記得的就是當時那恐怖的感受。而這時候突然需求產品邏輯變更,你的測試平臺這個功能也隨機失效,你也只能同步去改。那時候命運會再次給你拉回到那痛苦的經歷中,一邊無情的鞭撻你,一邊還要讓你明白,這種折磨是永無止境的無限迴圈,你永遠別想逃離。
還好我眼光足夠遠並且足夠膽大,所以一開始就想到了這些問題,早早的做好了後續維護的優化。
·比如頁面維護指令碼的各種請求/sql/shell 設定,讓配置變得極度靈活可控可視,而之後不需要去研究程式碼:
·比如開發各個自己維護程式碼會常用的小演算法工具:
·比如各種環境/資料庫等配置都放在頁面維護,而省的去改配置檔案或程式碼:
當然也少不了幫助文件,別人看不看無所謂,反正是給健忘的未來自己看的:
線上抓包mock來測試除錯出新改動的app資料(介面文件根本指不上,全靠自己抓包)
總之做了很多工作,算是未雨綢繆,磨刀不誤砍柴工。先打好了地基,未來你隨便建設摩天大樓。
能有這份思想 全靠iso9126國際軟體質量體系中的六大特性27子特性,作為一個匠心獨運的測開,自己開發的東西必須要跟著iso9126走,最終收益的是自己。(具體該體系可參考公眾號:測試開發乾貨的文章,自己去翻翻,我寫的理解比較通俗易懂)
而最後的結果是我維護起來,時間和精力起碼減少到一半以下。
但是我還是發現我天真了。因為一個功能雖然如此省時,但是我做了足足七八十個功能。這些功能對應著公司大部分開發的業務,每天都有變更和需要維護的。即使我再怎麼優化維護成本,這總消耗成本依然是天文數字,這長線持續的維護依然會扯碎我的時間精力。
當然我現在佛繫了很多,本平臺專用的智慧維護助手機器人(名字沒想好)也在研發中了。到時候進一步縮小自己的維護成本,我也會再度省出時間去做別的。
總結來說,這倆天都睡覺前在想後續的ios自動化和介面自動化監控的事宜,失眠也是常事,頭髮麼,大不了放棄吧。
這幾天晚上都在跑步,keep也重啟了。中午和新人聊天時候我隨口說了一句:我們這行,到最後拼的不是職位,不是技術,是誰tm身體好。
希望別對新人的職業生涯造成影響吧。
反正這話也沒錯,身體不好的話,再強也只能告老還鄉。
(ps: 日記系列並不僅僅是流水賬似的記載,當中沉澱的技術和設計思想,包括經驗和心裡分析都非常多,希望大家可以從中獲益。多多分享哈,讀者越多,產能越高~
最後歡迎關注私人公眾號:測試開發乾貨)
相關文章
- 測試開發工作者的日記:2020.6.3
- 測試開發工作者的日記:2020.6.6-6.9
- 測試開發工作者的日記:2020.6.4-6.5
- 測試開發工作者的日記:2020.6.12- 17 [聊聊頁面 ui 設計]UI
- 聊聊效能測試平臺
- 測試平臺之介面測試
- 測試平臺開發教程【提測平臺】階段總結(三)
- 貓眼測試開發實踐沉澱--Chaoyue測試管理平臺
- 開源測試平臺--MeterSphere
- 新潮測試平臺之效能測試
- 測試開發【提測平臺】分享8 - 平臺規劃和需求分析
- RestCloud測試平臺,支援壓力測試RESTCloud
- 測試平臺起航
- 聊聊測試左移到開發階段
- 介面測試平臺更新日記 20200926
- 關於測試平臺的搭建 (我們要不要搭建測試平臺)
- teprunner測試平臺用例前置模組開發
- 聊聊前端測試前端
- jtest 精準測試平臺開源
- 【提測平臺】測試平臺開發練手專案原始碼和教程彙總原始碼
- 從業務測試需求痛點到自動化測試平臺設計開發
- 測試開發實戰[提測平臺]15-實現提測單修改和郵件標記
- 測試仔的開發者日記:做了近倆月的開發感受.......
- PR效能測試工具升級到全鏈路效能測試與分析平臺
- 測試開發【提測平臺】分享5-實現產品線的新增
- 測試平臺開發(二) 高逼格登入頁面
- allure 測試報告怎麼嵌入到測試平臺?測試報告
- 測試平臺系列(77) 完善測試計劃頁面
- 測試平臺系列(73) 設計測試計劃功能
- 自動化測試平臺
- 聊聊持續測試
- 聊聊單元測試
- [測試平臺] 全流程客戶端測試質量保障客戶端
- teprunner測試平臺測試計劃批量執行用例
- 自動化功能測試平臺TestComplete的分散式測試教程(三)分散式
- 自動化功能測試平臺TestComplete的分散式測試教程(二)分散式
- API自動化測試平臺,支援場景化的API測試API
- 一篇文章入門django開發 (測試平臺)Django