使用postman進行接口自動化測試時,除了要驗證接口的返回,有時候還要同時驗證數據庫的數據,或者將接口返回的數據與數據庫的數據作對比,檢驗數據的正確性。html
有的時候還須要在執行自動化case以前,造一些測試數據,或者在跑完自動化以後,刪除測試數據。node
因此,咱們須要在postman裏鏈接並操做數據庫,才能實現真正的徹底自動化。mysql
經查閱資料,能夠經過安裝node.js和xmysql,實現Postman與數據庫的鏈接,生成Rest API,對數據庫的數據進行增刪改查操做。git
具體實現以下:github
nodejs下載地址:https://nodejs.org/en/sql
這一步是選擇安裝哪些模塊,默認是所有安裝,對於新手來講建議所有安裝。數據庫
npm package manager:
表示npm包管理器npm
online documentation shortcuts:
在線文檔快捷方式json
Add to PATH:
添加node安裝路徑到環境變量api
點開那個add path選項前面的+號,咱們看到,會主動把NodeJS和NPM這兩個模塊的命令路徑添加到系統路徑裏,對於咱們來講就很是方便了。
點擊next繼續下一步,確認信息,點擊Install開始安裝,程序開始複製文件等一系列步驟。一直到安裝完畢。
node -v
能夠看到,已經安裝成功。
npm install -g xmysql
xmysql -h 主機ip -u 用戶名-p 密碼 -d 數據庫名
能夠看到Database爲sousou,表的數量爲53。
鏈接成功後,咱們就能夠經過http://localhost:3000/api/表名來操做數據庫。
其中,where參數是條件,不加where則是查詢全部記錄。
以下例子,是指查詢【package】表中【id=11】的記錄(【eq】表明數據庫裏的【=】,其餘運算符見下文【數據庫操做合集】):
http://localhost:3000/api/package?_where=(id,eq,11)
其中,id是數據庫中的記錄的惟一標識。
以下例子,刪除【banner】表中【id=155】的記錄:
http://localhost:3000/api/banner/:id
能夠看出,一行受影響,證實已經刪除成功。
另:
能夠對結果加斷言(檢查點)進行校驗,例如判斷受影響行數爲1。
//校驗HTTP狀態碼爲200 pm.test("Status code is 200", function () { pm.response.to.have.status(200); }); var jsonData = pm.response.json(); //校驗受影響行數爲1 pm.test("affectedRows = 1", function () { pm.expect(jsonData.affectedRows).to.eql(1); });
能夠在Test Results中看到,狀態碼及受影響行數的斷言均經過。
其中,id是數據庫中的記錄的惟一標識,更新的數據以json的格式放在body裏
以下例子是將【package】表中【id=11】的記錄的【name】改成「測試修改」
http://localhost:3000/api/package/:id
經過結果response能夠看出,有一行受影響,說明已經更新成功了,可根據自身狀況設置響應的斷言進行校驗。
插入記錄的數據以json的格式放在body裏。
以下例子,向【banner】表中添加一條記錄:
http://localhost:3000/api/banner
能夠看出,受影響行數爲1,說明已經添加成功。
初入職場熱愛分享的打工人一枚,請你們多多指教~~