-
所有程式碼工程能夠自動化打包
-
所有程式碼提交後能夠自動構建編譯檢查以及單元測試任務
-
每小時完成一次軟體整合、部署以及核心功能的整合測試(API&UI;)
-
每天完成一次完整功能的整合測試(API&UI;)
-
每週完成一次7×24小時Longrun系統測試
-
自動更新經過測試的nightly build到開發測試環境
-
自動釋出經過測試的weekly build到Demo環境
-
開發Dev,測試QA,售前交付需要使用不同的資源,做到資源隔離;
-
資源的使用需要有許可權控制;
-
需要能夠一鍵部署單節點和HA多節點應用系統;
-
提供環境自動初始化,一鍵升級能力;
-
提供系統和應用級別的監控告警;
-
資源需要能夠定期回收。
-
GitLab:程式碼託管
-
Gerrit:程式碼審查
-
Jenkins:單元測試、自動化打包、整合測試
-
CMP:vSphere、OpenStack、Kubernetes等雲資源統一管理,應用系統自動化部署,版本更新
-
一致性:目前公司的UI自動化測試使用的就是RF框架,RF框架也完全有能力做整合測試,因此使用RF框架做整合測試,可以降低學習成本,提高可維護性。
-
復用性:在安裝了Robot-Framework-JMeter-Library後,RF可以執行JMeter指令碼,並且將JMeter執行結果轉為Html格式。公司目前效能測試用的就是JMeter,對於相同場景,只要小幅修改JMeter指令碼即可將其復用到整合測試上面。
-
如果不復用JMeter指令碼,編寫的API測試用例的成本非常高。 RF對於變數型別的規定堪稱僵硬(當然,這麼規定帶來的好處是方便型別檢測),RF中對於字典型別的建立非常麻煩(巢狀的字典實體如下),對於我們公司API請求中攜帶大量引數的情況,只能建立關鍵字來解決,不管是採取RF自帶建立字典的方法,還是建立關鍵字的方法,都比較浪費時間(因為難以復用)。
-
RF可以輕鬆擴充套件關鍵字,也因此可能帶來亂擴充套件關鍵字的問題,導致測試用例可讀性和可維護性差的問題。