新的系統(tǒng)不再用沖天炮侈咕,基于react&& spring boot做前后端分離,有web app 微信h5铐殃,并用yapi做接口管理剂府。整套研發(fā)管理基于ci,第一步代碼檢查用了eslint&p3c,app端用了360fireline,SQL試soar不過優(yōu)化建議不太準。通過git hooks使有問題的代碼根本不上編譯慰照,暴力但是效果不錯灶挟。
前端ui自動化有過幾個嘗試,headlness的puperteer,優(yōu)化后的rf,163的airtest,h5頁面試過fautotest,頁面變化大維護成本超高毒租,做了一個嘗試(謝謝閑魚大神指導),基于記錄頁面圖像做深度學習稚铣,判斷文字異常,界面錯位墅垮,報錯信息等頁面問題惕医,水平所限,記錄圖片和自動化腳本有了噩斟,但是tensorflow沒寫出來曹锨。
用Android 和 IOS的monkey,除了幫助做app穩(wěn)定性,在積累圖片上也是成功過的剃允,關于app做過基于adb的非功能數據的收集和對比沛简,橫向比類似的app齐鲤,縱向比不同版本,雖沒有專業(yè)的電表但是發(fā)現(xiàn)了幾個crash(感謝微信的大神指導,這里有一些機器學習的策略待專研)椒楣。接口由yapi管理给郊,直接做了基于結構化數據的管理,接口變化提醒測試捧灰、生成測試腳本和數據淆九,當然數據還是難在斷言,這個yapi沒有版本管理,不過基于里面的mongodb還是可以繼續(xù)做進一步拓展毛俏。
接口還做了一個簡單的壓力locust嘗試炭庙,運行沒發(fā)現(xiàn)太多問題,但轉教大神后煌寇,他們輕松挖得數據庫鎖并發(fā)低cpu內存高等問題焕蹄,nmon是個不錯的監(jiān)控工具。
過程中不斷強化utdd和bdd的應用阀溶,需要很好的單元測試習慣才能做utdd,而bdd在 lettuce和Sikulix已經試過腻脏,沒把業(yè)務拆明白,都是吹牛皮银锻。mock擋板在這個過程中起到重要作用永品,膜拜一下趙大神自帶的mockman,想法和實現(xiàn)是見過開源同類產品的翹楚击纬。
Jenkins的插件和burpsuite插件是好玩意鼎姐,前者滿足ci落地的最后一公里,后者滿足屌絲想用一些掃描又沒有錢買license.
經歷這兩類不同插件的開發(fā)使我明白好的架構真的很重要更振。當然2.0流水線還沒懂症见,但是devops aiops不應該只有概念,要實踐才能有新知殃饿,可惜…