成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

理想中的接口自動化項目,你了解嗎?

開發 項目管理
發票的接口自動化在多年前是寫了的,用Java+TestNG+RPC本地化了一套框架來實現,因為人員離職和業務變更,這套自動化到我手上的時候,已經不能用了,本地化的接口自動化項目也無法做數據度量,只有接口測試平臺寫的自動化用例才會被統計到。

如何評價接口自動化項目

我理想中的接口自動化項目,是有一套腳本,能夠100%覆蓋核心業務場景,能夠回歸線上頻繁出現的問題,能夠支持手工無法驗證的場景,能夠拋出偶現問題,能夠包含容易遺漏的邊界場景、異常場景,每天都能定時運行,出具報告,給予反饋。用實際的「指標量化」下:

  • 功能測試自動化率 = 自動化測試用例數/總測試用例數。
  • 自動化發現bug占比 = 自動化發現的bug/總bug數。
  • 自動化發現bug有效性 = 自動化發現的有效bug/自動化提交的bug總數。
  • 自動化執行成功率 = 自動化執行成功的次數/自動化執行總次數。
  • 周活躍自動化用例占比 = (∑每周執行過的自動化測試用例)/(∑周維度自動化測試用例)。
  • 應用維度自動化代碼覆蓋率 = 自動化用例覆蓋代碼行數/應用維度代碼總行數。

現狀是什么(Situation)

我負責的業務是發票中臺,數據流簡化后如下圖所示:

圖片

發票中臺對調用方提供RPC服務,底層有讀寫MySQL、同步ES、消息隊列、異步任務等服務,上游是用戶和訂單,需要賬號、增票資質、訂單等物料;下游是財務,推送申請單給財務開具發票等。發票的接口自動化在多年前是寫了的,用Java+TestNG+RPC本地化了一套框架來實現,因為人員離職和業務變更,這套自動化到我手上的時候,已經不能用了,本地化的接口自動化項目也無法做數據度量,只有接口測試平臺寫的自動化用例才會被統計到。

任務是什么(Task)

我給自己定的績效是在Q2完成95條自動化用例,按照一個標準化的自動化項目來實現發票的接口自動化,結合測試環境、測試物料、流水線、精準分析,打造一個個人的穩定的沉淀物,無論是晉升還是求職,都能拿來講點故事。

行動是什么(Action)

「編寫自動化用例的方式」

  • 最理想的方式,是能夠錄制線上流量直接轉換為自動化用例,修修改改即可。雖然我們有流量錄制回放平臺,但是它跟接口自動化平臺并沒有打通,很可惜不能采取這種方式。
  • 參考線上流量日志,抓取接口、入參,人工轉化為自動化用例。
  • 參考接口的代碼設計,比如controller/provider/sdk都定義了應用接口,能知道哪些覆蓋到了,哪些還需要補充。
  • 根據入參模板自行構造參數。參數個數太多的話造起來很麻煩。我主要采用第2種和第3種方式結合來編寫自動化用例。

「典型自動化用例」

圖片

前置步驟:初始化數據,將訂單發票類型更新為3。預設變量:提供參數化數據。執行步驟:調用修改訂單發票類型接口,將發票類型3改為2,入參引用預設變量。財務接口:依賴測試物料無法滿足,通過Mock來返回模板數據,讓接口繼續往下走。基礎斷言:接口響應狀態碼200。業務斷言:調用訂單列表查詢接口,用JSONPath提取響應中的發票類型,斷言已經改成了2。

場景用例

圖片數據準備:通過物料工具造訂單數據,寫入MySQL數據庫中。

更新MySQL數據:更新訂單的部分字段數據,觸發binlake,將數據同步至ES,因為提交開票申請是讀取的ES數據;從預設變量獲取orderId。

提交開票申請:從ES讀取訂單數據,提交開票申請;從預設變量獲取orderId和userId。

查詢申請單號:根據訂單號查詢申請單號;從預設變量獲取orderId和userId。用JSONPath提取申請單號,存入動態變量中。推送財務:把申請單號推送給財務;從動態變量獲取applyId。

覆蓋更多代碼

①看代碼:

圖片

在Java工程里面的Controller/Provider找到所有接口,分析可以用來做自動化的接口,設計自動化用例進行覆蓋。

②代碼覆蓋率:

圖片

借助于jacoco,在執行自動化用例后,把代碼覆蓋率跑出來,分析沒覆蓋的代碼,補充更多「正常/異常/邊界」的自動化用例。也就是精準測試。

自動化巡檢

圖片

每天早上8點,定時任務執行用例集;發送郵件,抄送測試組、開發組、領導,讓測試、開發和領導都知道自動化建設情況;如果出現問題,一定要在當天解決,并郵件回復問題原因;確保當天的自動化用例結果都是正確的;第二天接著繼續巡檢。

流水線

在持續集成中,引入自動化用例環節,把自動化用例跑通作為提測卡點,不通過可以駁回。

產出是什么(Result)

定性來看:「結合測試環境、測試物料、自動化、流水線、精準測試,完成了一個能對環境和業務進行穩定性巡檢,能對研發提測進行質量門禁,能對應用進行代碼覆蓋率分析的接口自動化項目。」定量來看:

  • 功能測試自動化率 = 自動化測試用例數/總測試用例數「95/100=95%」。
  • 自動化發現bug占比 = 自動化發現的bug/總bug數「2/53=3.7%」。
  • 自動化發現bug有效性 = 自動化發現的有效bug/自動化提交的bug總數「2/2=100%」。
  • 自動化執行成功率 = 自動化執行成功的次數/自動化執行總次數「5396/5621=96%」。
  • 周活躍自動化用例占比 = (∑每周執行過的自動化測試用例)/(∑周維度自動化測試用例)「77%」。
  • 應用維度自動化代碼覆蓋率 = 自動化用例覆蓋代碼行數/應用維度代碼總行數「39%」。

這個Q主要完成了核心流程和重要接口的自動化用例,還需要持續補充場景用例和異常/邊界的自動化用例。

責任編輯:武曉燕 來源: 測試開發剛哥
相關推薦

2020-12-07 09:00:00

架構開發技術

2016-01-13 10:09:49

自動化運維運維思想

2020-04-22 17:09:04

Python自動化開發

2016-01-08 13:19:30

開源自動化運維

2023-03-06 16:38:30

SQL數據庫

2022-09-14 10:00:12

前端自動化測試

2021-10-14 06:52:47

自動化開發環境

2023-11-09 08:22:38

2012-02-06 13:52:33

JavaScript

2017-06-14 08:08:40

運維監控自動化

2018-02-25 19:29:49

自動化數字化IT

2015-02-04 09:17:38

亞馬遜AWS云自動化

2021-12-06 20:00:59

人工智能AI自動化

2009-12-15 17:28:11

Ruby自動化腳本框架

2021-11-26 08:07:16

MySQL SQL 語句數據庫

2021-07-27 06:49:11

C#存儲檢索

2017-12-17 21:58:18

2022-12-26 12:30:28

接口測試

2023-09-13 11:40:12

2017-12-19 08:50:56

UIJavaAWS Lambda
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 黑人精品欧美一区二区蜜桃 | 欧美精品99 | 色爱区综合 | 一级欧美 | 国产精品视频在线播放 | 日韩美女一区二区三区在线观看 | 日韩成人在线观看 | 久久久高清| 91久久久久久久久久久久久 | 91中文字幕在线 | 免费观看一级黄色录像 | 亚洲一区欧美一区 | 成人在线观| 天天影视色综合 | 久久精品国产一区二区电影 | 北条麻妃av一区二区三区 | 在线观看视频福利 | 亚洲成人一区二区 | 精品一区二区久久久久久久网站 | 日操操 | 日日艹夜夜艹 | h视频在线观看免费 | 99热在线观看精品 | 久久av一区二区三区 | 中文字幕一区在线观看视频 | 日韩中文字幕在线不卡 | 精品欧美一区二区精品久久久 | 日韩一区二区三区在线 | a级大片免费观看 | 男人天堂手机在线视频 | 狠狠干网站 | 欧美日韩亚洲一区二区 | 亚洲国产精品久久久 | 九九久久精品视频 | 天堂网av在线| 一区欧美 | 国产中文区二幕区2012 | 视频在线亚洲 | 日韩av在线不卡 | 日本在线一区二区 | 瑟瑟视频在线看 |