數據準確性測試之【二】前端顯示的值、接口返回值和數據庫表裏的記錄

之前分享過一期 數據準確性測試【一】,主要是講的web頁面的值做校驗,依靠web自動化、接口自動化的手段,但校驗的是後臺處理過的數據,並未校驗數據庫的值,故在這期說下數據庫表的值與前端、接口的校驗;

具體情景

在這裏插入圖片描述
圖1的 Operation的Action 會打開此條記錄的order頁面【下圖】,可以看到 不同order,其Settlement Price、Fee字段值之和,實際對應前面頁面的Current Increased Payable、Current Increased Fee字段值。
在這裏插入圖片描述
數據庫裏 關於此2條order的記錄:
在這裏插入圖片描述

爲了確定後臺邏輯是對是錯,纔要連接數據庫做校驗–即拿到表的記錄,我們做各種處理後,再和前端顯示的數據、接口返回值做斷言。

代碼實現

數據庫拿到這test_day所有的order的list – 把所要用的字段值扔進某個list – 求和;

from Common.TestM import TestM
import pymysql


def t_1b(vendor_id, test_day):
    """數據庫查詢當前id、test_day 返回Select得到的所有記錄處理後的sum"""
    db = pymysql.connect('a', 'b', 'c', 'd')
    cur = db.cursor()
    change_l = TestM().time_change2(test_day)
    sql = "SELECT * FROM abc WHERE vendor_id = %d AND settlement_date < %d AND settlement_date > %d ;" % (vendor_id, change_l[1], change_l[0])
    cur.execute(sql)
    data = cur.fetchall()

    list1 = list()  # 簽收訂單的 settlementPrice的list
    list2 = list()  # 簽收訂單的 fee的list

    for d in data:
        list1.append(d['settlementPrice'])
        list2.append(d['fee'])

    cur.close()
    db.close()
    return sum(list1), sum(list2)

接口返回值及用例:

在這裏插入圖片描述

前端顯示的值:
在這裏插入圖片描述

交流技術 歡迎+QQ 153132336 zy
個人博客 https://blog.csdn.net/zyooooxie

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章